home *** CD-ROM | disk | FTP | other *** search
/ Dictionaries & Language / Dictionaries and Language (Chestnut CD-ROM) (1993).iso / gloss / jargn298 / jargon-b.txt < prev    next >
Encoding:
Text File  |  1991-09-07  |  98.7 KB  |  1,846 lines

  1. = B =
  2. =====
  3.  
  4. back door: n. A hole in the security of a system deliberately left
  5.    in place by designers or maintainers.  The motivation for this is
  6.    not always sinister; some operating systems, for example, come out
  7.    of the box with privileged accounts intended for use by field
  8.    service technicians or the vendor's maintenance programmers.
  9.  
  10.    Historically, back doors have often lurked in systems longer than
  11.    anyone expected or planned, and a few have become widely known.
  12.    The infamous {RTM} worm of late 1988, for example, used a back door
  13.    in the {BSD} UNIX `sendmail(8)' utility.
  14.  
  15.    Ken Thompson's 1983 Turing Award lecture to the ACM revealed the
  16.    existence of a back door in early UNIX versions that may have
  17.    qualified as the most fiendishly clever security hack of all time.
  18.    The C compiler contained code that would recognize when the
  19.    `login' command was being recompiled and insert some code
  20.    recognizing a password chosen by Thompson, giving him entry to the
  21.    system whether or not an account had been created for him.
  22.  
  23.    Normally such a back door could be removed by removing it from the
  24.    source code for the compiler and recompiling the compiler.  But to
  25.    recompile the compiler, you have to *use* the compiler --- so
  26.    Thompson also arranged that the compiler would *recognize when
  27.    it was compiling a version of itself*, and insert into the
  28.    recompiled compiler the code to insert into the recompiled `login'
  29.    the code to allow Thompson entry --- and, of course, the code to
  30.    recognize itself and do the whole thing again the next time around!
  31.    And having done this once, he was then able to recompile the
  32.    compiler from the original sources, leaving his back door in place
  33.    and active but with no trace in the sources.
  34.  
  35.    The talk that revealed this truly moby hack was published as
  36.    "Reflections on Trusting Trust", `Communications of the
  37.    ACM 27', 8 (August 1984), pp. 761--763.
  38.  
  39.    Syn. {trap door}; may also be called a `wormhole'.  See also
  40.    {iron box}, {cracker}, {worm}, {logic bomb}.
  41.  
  42. backbone cabal: n. A group of large-site administrators who pushed
  43.    through the {Great Renaming} and reined in the chaos of {USENET}
  44.    during most of the 1980s.  The cabal {mailing list} disbanded in
  45.    late 1988 after a bitter internal catfight, but the net hardly
  46. noticed.
  47.  
  48. backbone site: n. A key USENET and email site; one that processes
  49.    a large amount of third-party traffic, especially if it is the home
  50.    site of any of the regional coordinators for the USENET maps.
  51.    Notable backbone sites as of early 1991 include uunet and the
  52.    mail machines at Rutgers University, UC Berkeley, DEC's Western
  53.    Research Laboratories, Ohio State University, and the University of
  54.    Texas.  Compare {rib site}, {leaf site}.
  55.  
  56. backgammon:: See {bignum}, {moby}, and {pseudoprime}.
  57.  
  58. background: n.,adj.,vt.  To do a task `in background' is to do
  59.    it whenever {foreground} matters are not claiming your undivided
  60.    attention, and `to background' something means to relegate it to
  61.    a lower priority.  "For now, we'll just print a list of nodes and
  62.    links; I'm working on the graph-printing problem in background."
  63.    Note that this implies ongoing activity but at a reduced level or
  64.    in spare time, in contrast to mainstream `back burner' (which
  65.    connotes benign neglect until some future resumption of activity).
  66.    Some people prefer to use the term for processing that they have
  67.    queued up for their unconscious minds (a tack that one can often
  68.    fruitfully take upon encountering an obstacle in creative work).
  69.    Compare {amp off}, {slopsucker}.
  70.  
  71.    Technically, a task running in background is detached from the
  72.    terminal where it was started (and often running at a lower
  73.    priority); oppose {foreground}.  Nowadays this term is primarily
  74.    associated with {{UNIX}}, but it appears to have been first used
  75.    in this sense on OS/360.
  76.  
  77. backspace and overstrike: interj. Whoa!  Back up.  Used to suggest
  78.    that someone just said or did something wrong.  Common among
  79.    APL programmers.
  80.  
  81. backward combatability: /bak'w*rd k*m-bat'*-bil'*-tee/ [from
  82.    `backward compatibility'] n. A property of hardware or software
  83.    revisions in which previous protocols, formats, and layouts are
  84.    discarded in favor of `new and improved' protocols, formats, and
  85.    layouts.  Occurs usually when making the transition between major
  86.    releases.  When the change is so drastic that the old formats are
  87.    not retained in the new version, it is said to be `backward
  88.    combatable'.  See {flag day}.
  89.  
  90. BAD: /B-A-D/ [IBM: acronym, `Broken As Designed'] adj.  Said
  91.    of a program that is {bogus} because of bad design and misfeatures
  92.    rather than because of bugginess.  See {working as designed}.
  93.  
  94. Bad Thing: [from the 1930 Sellar & Yeatman parody `1066 And
  95.    All That'] n. Something that can't possibly result in improvement
  96.    of the subject.  This term is always capitalized, as in "Replacing
  97.    all of the 9600-baud modems with bicycle couriers would be a Bad
  98.    Thing".  Oppose {Good Thing}.  British correspondents confirm
  99.    that {Bad Thing} and {Good Thing} (and prob. therefore {Right
  100.    Thing} and {Wrong Thing}) come from the book referenced in the
  101.    etymology, which discusses rulers who were Good Kings but Bad
  102.    Things.  This has apparently created a mainstream idiom on the
  103.    British side of the pond.
  104.  
  105. bag on the side: n. An extension to an established hack that is
  106.    supposed to add some functionality to the original.  Usually
  107.    derogatory, implying that the original was being overextended and
  108.    should have been thrown away, and the new product is ugly,
  109.    inelegant, or bloated.  Also v. phrase, `to hang a bag on the side
  110.    [of]'.  "C++?  That's just a bag on the side of C ...." "They
  111.    want me to hang a bag on the side of the accounting system."
  112.  
  113. bagbiter: /bag'bi:t-*r/ n. 1. Something, such as a program or a
  114.    computer, that fails to work, or works in a remarkably clumsy
  115.    manner.  "This text editor won't let me make a file with a line
  116.    longer than 80 characters!  What a bagbiter!"  2. A person who has
  117.    caused you some trouble, inadvertently or otherwise, typically by
  118.    failing to program the computer properly.  Synonyms: {loser},
  119.    {cretin}, {chomper}.  3. adj. `bagbiting' Having the
  120.    quality of a bagbiter.  "This bagbiting system won't let me
  121.    compute the factorial of a negative number."  Compare {losing},
  122.    {cretinous}, {bletcherous}, `barfucious' (under
  123.    {barfulous}) and `chomping' (under {chomp}).  4. `bite
  124.    the bag' vi. To fail in some manner.  "The computer keeps crashing
  125.    every 5 minutes."  "Yes, the disk controller is really biting the
  126.    bag."  The original loading of these terms was almost undoubtedly
  127.    obscene, possibly referring to the scrotum, but in their current
  128.    usage they have become almost completely sanitized.
  129.  
  130.    A program called Lexiphage on the old MIT AI PDP-10 would draw on
  131.    a selected victim's bitmapped terminal the words "THE BAG" in
  132.    ornate letters, and then a pair of jaws biting pieces of it off.
  133.    This is the first and to date only known example of a program
  134.    *intended* to be a bagbiter.
  135.  
  136. bamf: /bamf/ 1. [from old X-Men comics] interj. Notional sound made
  137.    by a person or object teleporting in or out of the hearer's
  138.    vicinity.  Often used in {virtual reality} (esp. {MUD})
  139.    electronic {fora} when a character wishes to make a dramatic entrance
  140.    or exit.  2. The sound of magical transformation, used in virtual
  141.    reality {fora} like sense 1.  3. [from `Don Washington's
  142.    Survival Guide'] n. Acronym for `Bad-Ass Mother Fucker', used to
  143.    refer to one of the handful of nastiest monsters on an LPMUD or
  144.    other similar MUD.
  145.  
  146. banana label: n. The labels often used on the sides of {macrotape}
  147.    reels, so called because they are shaped roughly like blunt-ended
  148.    bananas.  This term, like macrotapes themselves, is still current
  149.    but visibly headed for obsolescence.
  150.  
  151. banana problem: n. [from the story of the little girl who said "I
  152.    know how to spell `banana', but I don't know when to stop"].  Not
  153.    knowing where or when to bring a production to a close (compare
  154.    {fencepost error}).  One may say `there is a banana problem' of an
  155.    algorithm with poorly defined or incorrect termination conditions,
  156.    or in discussing the evolution of a design that may be succumbing
  157.    to featuritis (see also {creeping elegance}, {creeping
  158.    featuritis}).  See item 176 under {HAKMEM}, which describes a
  159.    banana problem in a {Dissociated Press} implementation.
  160.  
  161. bandwidth: n. 1. Used by hackers in a generalization of its
  162.    technical meaning as the volume of information per unit time that a
  163.    computer, person, or transmission medium can handle.  "Those are
  164.    amazing graphics, but I missed some of the detail --- not enough
  165.    bandwidth, I guess."  Compare {low-bandwidth}.  2. Attention
  166.    span.  3. On {USENET}, a measure of network capacity that is
  167.    often wasted by people complaining about how items posted by others
  168.    are a waste of bandwidth.
  169.  
  170. bang: 1. n. Common spoken name for `!' (ASCII 0100001),
  171.    especially when used in pronouncing a {bang path} in spoken
  172.    hackish.  In {elder days} this was considered a CMUish usage,
  173.    with MIT and Stanford hackers preferring {excl} or {shriek};
  174.    but the spread of UNIX has carried `bang' with it (esp. via the
  175.    term {bang path}) and it is now certainly the most common spoken
  176.    name for `!'.  Note that it is used exclusively for
  177.    non-emphatic written `!'; one would not say "Congratulations
  178.    bang" (except possibly for humorous purposes), but if one wanted
  179.    to specify the exact characters `foo!' one would speak "Eff oh oh
  180.    bang".  See {shriek}, {{ASCII}}.  2. interj. An exclamation
  181.    signifying roughly "I have achieved enlightenment!", or "The
  182.    dynamite has cleared out my brain!"  Often used to acknowledge
  183.    that one has perpetrated a {thinko} immediately after one has
  184.    been called on it.
  185.  
  186. bang on: vt. To stress-test a piece of hardware or software: "I
  187.    banged on the new version of the simulator all day yesterday and it
  188.    didn't crash once.  I guess it is ready to release."  The term
  189.    {pound on} is synonymous.
  190.  
  191. bang path: n. An old-style UUCP electronic-mail address specifying
  192.    hops to get from some assumed-reachable location to the addressee,
  193.    so called because each {hop} is signified by a {bang} sign.
  194.    Thus, for example, the path ...!bigsite!foovax!barbox!me
  195.    directs people to route their mail to machine bigsite (presumably
  196.    a well-known location accessible to everybody) and from there
  197.    through the machine foovax to the account of user me on
  198.    barbox.
  199.  
  200.    In the bad old days of not so long ago, before autorouting mailers
  201.    became commonplace, people often published compound bang addresses
  202.    using the { } convention (see {glob}) to give paths from
  203.    *several* big machines, in the hopes that one's correspondent
  204.    might be able to get mail to one of them reliably (example:
  205.    ...!{seismo, ut-sally, ihnp4}!rice!beta!gamma!me).  Bang paths
  206.    of 8 to 10 hops were not uncommon in 1981.  Late-night dial-up
  207.    UUCP links would cause week-long transmission times.  Bang paths
  208.    were often selected by both transmission time and reliability, as
  209.    messages would often get lost.  See {{Internet address}},
  210.    {network, the}, and {sitename}.
  211.  
  212. banner: n. 1. The title page added to printouts by most print
  213.    spoolers (see {spool}).  Typically includes user or account ID
  214.    information in very large character-graphics capitals.  Also called
  215.    a `burst page', because it indicates where to burst (tear apart)
  216.    fanfold paper to separate one user's printout from the next.  2. A
  217.    similar printout generated (typically on multiple pages of fan-fold
  218.    paper) from user-specified text, e.g., by a program such as UNIX's
  219.    `banner({1,6})'.  3. On interactive software, a first screen
  220.    containing a logo and/or author credits and/or a copyright notice.
  221.  
  222. bar: /bar/ n. 1. The second metasyntactic variable, after {foo}
  223.    and before {baz}.  "Suppose we have two functions: FOO and BAR.
  224.    FOO calls BAR...."  2. Often appended to {foo} to produce
  225.    {foobar}.
  226.  
  227. bare metal: n. 1. New computer hardware, unadorned with such
  228.    snares and delusions as an {operating system}, an {HLL}, or
  229.    even assembler.  Commonly used in the phrase `programming on the
  230.    bare metal', which refers to the arduous work of {bit bashing}
  231.    needed to create these basic tools for a new machine.  Real
  232.    bare-metal programming involves things like building boot proms and
  233.    BIOS chips, implementing basic monitors used to test device
  234.    drivers, and writing the assemblers that will be used to write the
  235.    compiler back ends that will give the new machine a real
  236.    development environment.  2. `Programming on the bare metal' is
  237.    also used to describe a style of {hand-hacking} that relies on
  238.    bit-level peculiarities of a particular hardware design, esp.
  239.    tricks for speed and space optimization that rely on crocks such as
  240.    overlapping instructions (or, as in the famous case described in
  241.    appendix A, interleaving of opcodes on a magnetic drum to minimize
  242.    fetch delays due to the device's rotational latency).  This sort of
  243.    thing has become less common as the relative costs of programming
  244.    time and machine resources have changed, but is still found in
  245.    heavily constrained environments such as industrial embedded systems.
  246.    See {real programmer}.
  247.  
  248.    In the world of personal computing, bare metal programming (especially
  249.    in sense 1 but sometimes also in sense 2) is often considered a
  250.    {Good Thing}, or at least a necessary thing (because these
  251.    machines have often been sufficiently slow and poorly designed
  252.    to make it necessary; see {ill-behaved}).  There, the term
  253.    usually refers to bypassing the BIOS or OS interface and writing
  254.    the application to directly access device registers and machine
  255.    addresses.  "To get 19.2 kilobaud on the serial port, you need to
  256.    get down to the bare metal."  People who can do this sort of thing
  257.    are held in high regard.
  258.  
  259. barf: /barf/ [from mainstream slang meaning `vomit']
  260.    1. interj.  Term of disgust.  This is the closest hackish
  261.    equivalent of the Val\-speak "gag me with a spoon". (Like, euwww!)
  262.    See {bletch}.  2. vi. To say "Barf!" or emit some similar
  263.    expression of disgust.  "I showed him my latest hack and he
  264.    barfed" means only that he complained about it, not that he
  265.    literally vomited.  3. vi. To fail to work because of unacceptable
  266.    input.  May mean to give an error message.  Examples: "The
  267.    division operation barfs if you try to divide by 0."  (That is,
  268.    the division operation checks for an attempt to divide by zero, and
  269.    if one is encountered it causes the operation to fail in some
  270.    unspecified, but generally obvious, manner.) "The text editor
  271.    barfs if you try to read in a new file before writing out the old
  272.    one."  See {choke}, {gag}.  In Commonwealth hackish,
  273.    `barf' is generally replaced by `puke' or `vom'.  {barf}
  274.    is sometimes also used as a metasyntactic variable, like {foo} or
  275.    {bar}.
  276.  
  277. barfulation: /bar`fyoo-lay'sh*n/ interj. Variation of {barf}
  278.    used around the Stanford area.  An exclamation, expressing disgust.
  279.    On seeing some particularly bad code one might exclaim,
  280.    "Barfulation!  Who wrote this, Quux?"
  281.  
  282. barfulous: /bar'fyoo-l*s/ adj. (alt. `barfucious',
  283.    /bar-fyoo-sh*s/) Said of something that would make anyone barf,
  284.    if only for esthetic reasons.
  285.  
  286. baroque: adj. Feature-encrusted; complex; gaudy; verging on
  287.    excessive.  Said of hardware or (esp.) software designs, this has
  288.    many of the connotations of {elephantine} or {monstrosity} but is
  289.    less extreme and not pejorative in itself.  "Metafont even has 
  290.    features to introduce random variations to its letterform output.
  291.    Now *that* is baroque!"  See also {rococo}.
  292.  
  293. BartleMUD: /bar'tl-muhd/ n. Any of the MUDs derived from the
  294.    original MUD game by Richard Bartle (see {MUD}).  BartleMUDs are
  295.    noted for their (usually slightly offbeat) humor, dry but friendly
  296.    syntax, and lack of adjectives in object descriptions, so a player
  297.    is likely to come across `brand172', for instance (see {brand
  298.    brand brand}).  Some MUDders intensely dislike Bartle and this
  299.    term, and prefer to speak of `MUD-1'.
  300.  
  301. BASIC: n. A programming language, originally designed for
  302.    Dartmouth's experimental timesharing system in the
  303.    early 1960s, which has since become the leading cause of
  304.    brain-damage in proto-hackers.  This is another case (like
  305.    {Pascal}) of the bad things that happen when a language
  306.    deliberately designed as an educational toy gets taken too
  307.    seriously.  A novice can write short BASIC programs (on the order of
  308.    10--20 lines) very easily; writing anything longer is (a) very
  309.    painful, and (b) encourages bad habits that will bite him/her later
  310.    if he/she tries to hack in a real language.  This wouldn't be so
  311.    bad if historical accidents hadn't made BASIC so common on low-end
  312.    micros.  As it is, it ruins thousands of potential wizards a year.
  313.  
  314. batch: adj. 1. Non-interactive.  Hackers use this somewhat more
  315.    loosely than the traditional technical definitions justify; in
  316.    particular, switches on a normally interactive program that prepare
  317.    it to receive non-interactive command input are often referred to
  318.    as `batch mode' switches.  A `batch file' is a series of
  319.    instructions written to be handed to an interactive program running
  320.    in batch mode.  2. Performance of dreary tasks all at one sitting.
  321.    "I finally sat down in batch mode and wrote out checks for all
  322.    those bills; I guess they'll turn the electricity back on next
  323.    week..." 3. Accumulation of a number of small tasks that can be
  324.    lumped together for greater efficiency.  "I'm batching up those
  325.    letters to send sometime" "I'm batching up bottles to take to the
  326.    recycling center."
  327.  
  328. bathtub curve: n. Common term for the curve (resembling an
  329.    end-to-end section of one of those claw-footed antique bathtubs)
  330.    that describes the expected failure rate of electronics with time:
  331.    initially high, dropping to near 0 for most of the system's
  332.    lifetime, then rising again as it `tires out'.  See also {burn-in
  333.    period}, {infant mortality}.
  334.  
  335. baud: /bawd/ [simplified from its technical meaning] n. Bits per
  336.    second.  Hence kilobaud or Kbaud, thousands of bits per second.
  337.    The technical meaning is `level transitions per second'; this
  338.    coincides with bps only for two-level modulation with no framing or
  339.    stop bits.  Most hackers are aware of these nuances but blithely
  340.    ignore them.
  341.  
  342. baud barf: /bawd barf/ n. The garbage one gets on the monitor
  343.    when using a modem connection with some protocol setting (esp.
  344.    line speed) incorrect, or when someone picks up a voice extension
  345.    on the same line, or when really bad line noise disrupts the
  346.    connection.  Baud barf is not completely {random}, by the way;
  347.    hackers with a lot of serial-line experience can usually tell
  348.    whether the device at the other end is expecting a higher or lower
  349.    speed than the terminal is set to.  *Really* experienced ones
  350.    can identify particular speeds.
  351.  
  352. baz: /baz/ [Stanford: corruption of {bar}] n. 1. The third
  353.    metasyntactic variable, after {foo} and {bar} and before
  354.    {quux} (or, occasionally, `qux'; or local idiosyncracies like
  355.    `rag', `zowie', etc.).  "Suppose we have three functions: FOO,
  356.    BAR, and BAZ.  FOO calls BAR, which calls BAZ...."
  357.    2. interj. A term of mild annoyance.  In this usage the term is
  358.    often drawn out for 2 or 3 seconds, producing an effect not unlike
  359.    the bleating of a sheep; /baaaaaaz/.  3. Occasionally appended to
  360.    {foo} to produce `foobaz'.
  361.  
  362. bboard: /bee'bord/ [contraction of `bulletin board'] n.
  363.    1. Any electronic bulletin board; esp. used of {BBS} systems
  364.    running on personal micros, less frequently of a USENET
  365.    {newsgroup} (in fact, use of the term for a newsgroup generally
  366.    marks one either as a {newbie} fresh in from the BBS world or as
  367.    a real old-timer predating USENET).  2. At CMU and other colleges
  368.    with similar facilities, refers to campus-wide electronic bulletin
  369.    boards.  3. The term `physical bboard' is sometimes used to
  370.    refer to a old-fashioned, non-electronic cork memo board.  At CMU,
  371.    it refers to a particular one outside the CS Lounge.
  372.  
  373.    In either of senses 1 or 2, the term is usually prefixed by the
  374.    name of the intended board (`the Moonlight Casino bboard' or
  375.    `market bboard'); however, if the context is clear, the better-read
  376.    bboards may be referred to by name alone, as in (at CMU) "Don't
  377.    post for-sale ads on general".
  378.  
  379. BBS: /B-B-S/ [acronym, `Bulletin Board System'] n. An electronic
  380.    bulletin board system; that is, a message database where people can
  381.    log in and leave broadcast messages for others grouped (typically)
  382.    into {topic group}s.  Thousands of local BBS systems are in
  383.    operation throughout the U.S., typically run by amateurs for fun
  384.    out of their homes on MS-DOS boxes with a single modem line each.
  385.    Fans of USENET and Internet or the big commercial timesharing
  386.    bboards such as CompuServe and GEnie tend to consider local BBSes
  387.    the low-rent district of the hacker culture, but they serve a
  388.    valuable function by knitting together lots of hackers and users in
  389.    the personal-micro world who would otherwise be unable to exchange
  390.    code at all.
  391.  
  392. beam: [from Star Trek Classic's "Beam me up, Scotty!"] vt. To
  393.    transfer {softcopy} of a file electronically; most often in
  394.    combining forms such as `beam me a copy' or `beam that over to
  395.    his site'.  Compare {blast}, {snarf}, {BLT}.
  396.  
  397. beanie key: [Mac users] n. See {command key}.
  398.  
  399. beep: n.,v. Syn. {feep}.  This term seems to be preferred among micro
  400.    hobbyists.
  401.  
  402. beige toaster: n. A Macintosh. See {toaster}; compare
  403.    {Macintrash}, {maggotbox}.
  404.  
  405. bells and whistles: [by analogy with the toyboxes on theater
  406.    organs] n. Features added to a program or system to make it more
  407.    {flavorful} from a hacker's point of view, without necessarily
  408.    adding to its utility for its primary function.  Distinguished from
  409.    {chrome}, which is intended to attract users.  "Now that we've
  410.    got the basic program working, let's go back and add some bells and
  411.    whistles."  No one seems to know what distinguishes a bell from a
  412.    whistle.
  413.  
  414. bells, whistles, and gongs: n. A standard elaborated form of
  415.    {bells and whistles}; typically said with a pronounced and ironic
  416.    accent on the `gongs'.
  417.  
  418. benchmark: [techspeak] n. An inaccurate measure of computer
  419.    performance.  "In the computer industry, there are three kinds of
  420.    lies: lies, damn lies, and benchmarks."  Well-known ones include
  421.    Whetstone, Dhrystone, Rhealstone (see {h}), the Gabriel LISP
  422.    benchmarks (see {gabriel}), the SPECmark suite, and LINPACK.  See
  423.    also {machoflops}, {MIPS}.
  424.  
  425. Berkeley Quality Software: adj. (often abbreviated `BQS') Term used
  426.    in a pejorative sense to refer to software that was apparently
  427.    created by rather spaced-out hackers late at night to solve some
  428.    unique problem.  It usually has nonexistent, incomplete, or
  429.    incorrect documentation, has been tested on at least two examples,
  430.    and core dumps when anyone else attempts to use it.  This term was
  431.    frequently applied to early versions of the `dbx(1)' debugger.
  432.    See also {Berzerkeley}.
  433.  
  434. berklix: /berk'liks/ n.,adj. [contraction of `Berkeley UNIX'] See
  435.    {BSD}.  Not used at Berkeley itself.  May be more common among
  436.    {suit}s attempting to sound like cognoscenti than among hackers,
  437.    who usually just say `BSD'.
  438.  
  439. berserking: vi. A {MUD} term meaning to gain points *only*
  440.    by killing other players and mobiles (non-player characters).
  441.    Hence, a Berserker-Wizard is a player character that has achieved
  442.    enough points to become a wizard, but only by killing other
  443.    characters.  Berserking is sometimes frowned upon because of its
  444.    inherently antisocial nature, but some MUDs have a `berserker
  445.    mode' in which a player becomes *permanently* berserk, can
  446.    never flee from a fight, cannot use magic, gets no score for
  447.    treasure, but does get double kill points.  "Berserker
  448.    wizards can seriously damage your elf!"
  449.  
  450. Berzerkeley: /b*r-zer'klee/ [from `berserk', via the name of a
  451.    now-deceased record label] n. Humorous distortion of `Berkeley'
  452.    used esp. to refer to the practices or products of the
  453.    {BSD} UNIX hackers.  See {software bloat}, {Missed'em-five},
  454.    {Berkeley Quality Software}.
  455.  
  456.    Mainstream use of this term in reference to the cultural and
  457.    political peculiarities of UC Berkeley as a whole has been reported
  458.    from as far back as the 1960s.
  459.  
  460. beta: /bay't*/, /be't*/ or (Commonwealth) /bee't*/ n. 1. In
  461.    the {Real World}, software often goes through two stages of
  462.    testing: Alpha (in-house) and Beta (out-house?).  Software is said
  463.    to be `in beta'.  2. Anything that is new and experimental is in
  464.    beta. "His girlfriend is in beta" means that he is still testing
  465.    for compatibility and reserving judgment.  3. Beta software is
  466.    notoriously buggy, so `in beta' connotes flakiness.
  467.  
  468.    Historical note: More formally, to beta-test is to test a
  469.    pre-release (potentially unreliable) version of a piece of software
  470.    by making it available to selected customers and users.  This term
  471.    derives from early 1960s terminology for product cycle checkpoints,
  472.    first used at IBM but later standard throughout the industry.
  473.    `Alpha Test' was the unit, module, or component test phase; `Beta
  474.    Test' was initial system test.  These themselves came from earlier
  475.    A- and B-tests for hardware.  The A-test was a feasibility and
  476.    manufacturability evaluation done before any commitment to design
  477.    and development.  The B-test was a demonstration that the
  478.    engineering model functioned as specified.  The C-test
  479.    (corresponding to today's beta) was the B-test performed on early
  480.    samples of the production design.
  481.  
  482. BFI: /B-F-I/ n. See {brute force and ignorance}.  Also
  483.    encountered in the variant `BFMI', `brute force and
  484.    *massive* ignorance'.
  485.  
  486. bible: n. 1. One of a small number of fundamental source books
  487.    such as {Knuth} and {K&R}.  2. The most detailed and
  488.    authoritative reference for a particular language, operating
  489.    system, or other complex software system.
  490.  
  491. BiCapitalization: n. The act said to have been performed on
  492.    trademarks (such as NeXT, {NeWS}, VisiCalc, FrameMaker,
  493.    TK!solver, EasyWriter) that have been raised above the ruck of
  494.    common coinage by nonstandard capitalization.  Too many
  495.    {marketroid} types think this sort of thing is really cute, even
  496.    the 2,317th time they do it.  Compare {studlycaps}.
  497.  
  498. BIFF: /bif/ [USENET] n. The most famous {pseudo}, and the
  499.    prototypical {newbie}.  Articles from BIFF are characterized by
  500.    all uppercase letters sprinkled liberally with bangs, typos,
  501.    `cute' misspellings (EVRY BUDY LUVS GOOD OLD BIFF CUZ HE"S A K00L
  502.    DOOD AN HE RITES REEL AWESUM THINGZ IN CAPITULL LETTRS LIKE
  503.    THIS!!!), use (and often misuse) of fragments of {talk mode}
  504.    abbreviations, a long {sig block} (sometimes even a {doubled
  505.    sig}), and unbounded na"ivet'e.  BIFF posts articles using his elder
  506.    brother's VIC-20.  BIFF's location is a mystery, as his articles
  507.    appear to come from a variety of sites.  However, {BITNET} seems to
  508.    be the most frequent origin.  The theory that BIFF is a denizen of
  509.    BITNET is supported by BIFF's (unfortunately invalid) electronic
  510.    mail address: BIFF@BIT.NET.
  511.  
  512. biff: /bif/ vt. To notify someone of incoming mail.  From the
  513.    BSD utility `biff(1)', which was in turn named after the
  514.    implementor's dog (it barked whenever the mailman came).  No
  515.    relation to {BIFF}.
  516.  
  517. Big Gray Wall: n. What faces a {VMS} user searching for
  518.    documentation.  A full VMS kit comes on a pallet, the documentation
  519.    taking up around 15 feet of shelf space before the addition of layered
  520.    products such as compilers, databases, multivendor networking,
  521.    and programming tools.  Recent (since VMS version 5) DEC
  522.    documentation comes with gray binders; under VMS version 4 the
  523.    binders were orange (`big orange wall'), and under version 3
  524.    they were blue.  See {VMS}.
  525.  
  526. big iron: n. Large, expensive, ultra-fast computers.  Used generally
  527.    of {number-crunching} supercomputers such as Crays, but can include
  528.    more conventional big commercial IBMish mainframes.  Term of
  529.    approval; compare {heavy metal}, oppose {dinosaur}.
  530.  
  531. Big Red Switch: [IBM] n. The power switch on a computer, esp. the
  532.    `Emergency Pull' switch on an IBM {mainframe} or the power switch
  533.    on an IBM PC where it really is large and red.  "This !@%$%
  534.    {bitty box} is hung again; time to hit the Big Red Switch."
  535.    Sources at IBM report that, in tune with the company's passion for
  536.    {TLA}s, this is often acronymized as `BRS' (this has also
  537.    become established on FidoNet and in the PC {clone} world).  It
  538.    is alleged that the emergency pull switch on an IBM 360/91 actually
  539.    fired a non-conducting bolt into the main power feed; the BRSes on
  540.    more recent machines physically drop a block into place so that
  541.    they can't be pushed back in.  People get fired for pulling them,
  542.    especially inappropriately (see also {molly-guard}).  Compare
  543.    {power cycle}, {three-finger salute}, {120 reset}.
  544.  
  545. Big Room, the: n. The extremely large room with the blue ceiling
  546.    and intensely bright light (during the day) or black ceiling with
  547.    lots of tiny night-lights (during the night) found outside all
  548.    computer installations.  "He can't come to the phone right now,
  549.    he's somewhere out in the Big Room."
  550.  
  551. big win: n. Serendipity.  "Yes, those two physicists discovered
  552.    high-temperature superconductivity in a batch of ceramic that had
  553.    been prepared incorrectly according to their experimental schedule.
  554.    Small mistake; big win!" See {win big}.
  555.  
  556. big-endian: [From Swift's `Gulliver's Travels' via the famous
  557.    paper `On Holy Wars and a Plea for Peace' by Danny Cohen,
  558.    USC/ISI IEN 137, dated April 1, 1980] adj. 1. Describes a computer
  559.    architecture in which, within a given multi-byte numeric
  560.    representation, the most significant byte has the lowest address
  561.    (the word is stored `big-end-first').  Most processors, including
  562.    the IBM 370 family, the {PDP-10}, the Motorola microprocessor
  563.    families, and most of the various RISC designs current in mid-1991,
  564.    are big-endian.  See {little-endian}, {middle-endian}, {NUXI
  565.    problem}.  2. An {{Internet address}} the wrong way round.  Most
  566.    of the world follows the Internet standard and writes email
  567.    addresses starting with the name of the computer and ending up with
  568.    the name of the country.  In the U.K. the Joint Networking Team had
  569.    decided to do it the other way round before the Internet domain
  570.    standard was established; e.g., me@uk.ac.wigan.cs.  Most gateway
  571.    sites have {ad-hockery} in their mailers to handle this, but can
  572.    still be confused.  In particular, the address above could be in the
  573.    U.K. (domain uk) or Czechoslovakia (domain cs).
  574.  
  575. bignum: /big'nuhm/ [orig. from MIT MacLISP] n. 1. [techspeak] A
  576.    multiple-precision computer representation for very large integers.
  577.    More generally, any very large number.  "Have you ever looked at
  578.    the United States Budget?  There's bignums for you!"
  579.    2. [Stanford] In backgammon, large numbers on the dice are called
  580.    `bignums', especially a roll of double fives or double sixes
  581.    (compare {moby}, sense 4).  See also {El Camino Bignum}.
  582.  
  583.    Sense 1 may require some explanation.  Most computer languages
  584.    provide a kind of data called `integer', but such computer
  585.    integers are usually very limited in size; usually they must be
  586.    smaller than than 2^{31} (2,147,483,648) or (on a losing
  587.    {bitty box}) 2^{15} (32,768).  If you want to work with
  588.    numbers larger than that, you have to use floating-point numbers,
  589.    which are usually accurate to only six or seven decimal places.
  590.    Computer languages that provide bignums can perform exact
  591.    calculations on very large numbers, such as 1000!  (the factorial
  592.    of 1000, which is 1000 times 999 times 998 times ... times 2
  593.    times 1).  For example, this value for 1000!  was computed by the
  594.    MacLISP system using bignums:
  595.  
  596.      40238726007709377354370243392300398571937486421071
  597.      46325437999104299385123986290205920442084869694048
  598.      00479988610197196058631666872994808558901323829669
  599.      94459099742450408707375991882362772718873251977950
  600.      59509952761208749754624970436014182780946464962910
  601.      56393887437886487337119181045825783647849977012476
  602.      63288983595573543251318532395846307555740911426241
  603.      74743493475534286465766116677973966688202912073791
  604.      43853719588249808126867838374559731746136085379534
  605.      52422158659320192809087829730843139284440328123155
  606.      86110369768013573042161687476096758713483120254785
  607.      89320767169132448426236131412508780208000261683151
  608.      02734182797770478463586817016436502415369139828126
  609.      48102130927612448963599287051149649754199093422215
  610.      66832572080821333186116811553615836546984046708975
  611.      60290095053761647584772842188967964624494516076535
  612.      34081989013854424879849599533191017233555566021394
  613.      50399736280750137837615307127761926849034352625200
  614.      01588853514733161170210396817592151090778801939317
  615.      81141945452572238655414610628921879602238389714760
  616.      88506276862967146674697562911234082439208160153780
  617.      88989396451826324367161676217916890977991190375403
  618.      12746222899880051954444142820121873617459926429565
  619.      81746628302955570299024324153181617210465832036786
  620.      90611726015878352075151628422554026517048330422614
  621.      39742869330616908979684825901254583271682264580665
  622.      26769958652682272807075781391858178889652208164348
  623.      34482599326604336766017699961283186078838615027946
  624.      59551311565520360939881806121385586003014356945272
  625.      24206344631797460594682573103790084024432438465657
  626.      24501440282188525247093519062092902313649327349756
  627.      55139587205596542287497740114133469627154228458623
  628.      77387538230483865688976461927383814900140767310446
  629.      64025989949022222176590433990188601856652648506179
  630.      97023561938970178600408118897299183110211712298459
  631.      01641921068884387121855646124960798722908519296819
  632.      37238864261483965738229112312502418664935314397013
  633.      74285319266498753372189406942814341185201580141233
  634.      44828015051399694290153483077644569099073152433278
  635.      28826986460278986432113908350621709500259738986355
  636.      42771967428222487575867657523442202075736305694988
  637.      25087968928162753848863396909959826280956121450994
  638.      87170124451646126037902930912088908694202851064018
  639.      21543994571568059418727489980942547421735824010636
  640.      77404595741785160829230135358081840096996372524230
  641.      56085590370062427124341690900415369010593398383577
  642.      79394109700277534720000000000000000000000000000000
  643.      00000000000000000000000000000000000000000000000000
  644.      00000000000000000000000000000000000000000000000000
  645.      00000000000000000000000000000000000000000000000000
  646.      00000000000000000000000000000000000000000000000000
  647.      000000000000000000.
  648.  
  649. bigot: n. A person who is religiously attached to a particular
  650.    computer, language, operating system, editor, or other tool (see
  651.    {religious issues}).  Usually found with a specifier; thus,
  652.    `cray bigot', {ITS bigot}, `APL bigot', `VMS bigot',
  653.    {Berkeley bigot}.  True bigots can be distinguished from mere
  654.    partisans or zealots by the fact that they refuse to learn
  655.    alternatives even when the march of time and/or technology is
  656.    threatening to obsolete the favored tool.  It is said "You can
  657.    tell a bigot, but you can't tell him much."  Compare
  658.    {weenie}.
  659.  
  660. bit: [from the mainstream meaning and `Binary digIT'] n.
  661.    1. [techspeak] The unit of information; the amount of information
  662.    obtained by asking a yes-or-no question for which the two outcomes
  663.    are equally probable.  2. [techspeak] A computational quantity that
  664.    can take on one of two values, such as true and false or 0 and 1.
  665.    3. A mental flag: a reminder that something should be done
  666.    eventually.  "I have a bit set for you."  (I haven't seen you for
  667.    a while, and I'm supposed to tell or ask you something.)  4. More
  668.    generally, a (possibly incorrect) mental state of belief.  "I have
  669.    a bit set that says that you were the last guy to hack on EMACS."
  670.    (Meaning "I think you were the last guy to hack on EMACS, and what
  671.    I am about to say is predicated on this, so please stop me if this
  672.    isn't true.")
  673.  
  674.    "I just need one bit from you" is a polite way of indicating that
  675.    you intend only a short interruption for a question that can
  676.    presumably be answered yes or no.
  677.  
  678.    A bit is said to be `set' if its value is true or 1, and
  679.    `reset' or `clear' if its value is false or 0.  One
  680.    speaks of setting and clearing bits.  To {toggle} or
  681.    `invert' a bit is to change it, either from 0 to 1 or from
  682.    1 to 0.  See also {flag}, {trit}, {mode bit}.
  683.  
  684. bit bang: n. Transmission of data on a serial line, when
  685.    accomplished by rapidly tweaking a single output bit at the
  686.    appropriate times.  The technique is a simple
  687.    loop with eight OUT and SHIFT instruction pairs for each byte.
  688.    Input is more interesting.  And full duplex (doing input and output
  689.    at the same time) is one way to separate the real hackers from the
  690.    {wannabee}s.
  691.  
  692.    Bit bang was used on certain early models of Prime computers,
  693.    presumably when UARTs were too expensive, and on archaic Z80 micros
  694.    with a Zilog PIO but no SIO.  In an interesting instance of the
  695.    {cycle of reincarnation}, this technique is now (1991) coming
  696.    back into use on some RISC architectures because it consumes such
  697.    an infinitesimal part of the processor that it actually makes sense
  698.    not to have a UART.
  699.  
  700. bit bashing: n. (alt. `bit diddling' or {bit twiddling}) Term
  701.    used to describe any of several kinds of low-level programming
  702.    characterized by manipulation of {bit}, {flag}, {nybble},
  703.    and other smaller-than-character-sized pieces of data; these
  704.    include low-level device control, encryption algorithms, checksum
  705.    and error-correcting codes, hash functions, some flavors of
  706.    graphics programming (see {bitblt}), and assembler/compiler code
  707.    generation.  May connote either tedium or a real technical
  708.    challenge (more usually the former).  "The command decoding for
  709.    the new tape driver looks pretty solid but the bit-bashing for the
  710.    control registers still has bugs."  See also {bit bang},
  711.    {mode bit}.
  712.  
  713. bit bucket: n. 1. The universal data sink (originally, the
  714.    mythical receptacle used to catch bits when they fall off the end
  715.    of a register during a shift instruction).  Discarded, lost, or
  716.    destroyed data is said to have `gone to the bit bucket'.  On {{UNIX}},
  717.    often used for {/dev/null}.  Sometimes amplified as `the Great
  718.    Bit Bucket in the Sky'.  2. The place where all lost mail and news
  719.    messages eventually go.  The selection is performed according to
  720.    {Finagle's Law}; important mail is much more likely to end up in
  721.    the bit bucket than junk mail, which has an almost 100% probability
  722.    of getting delivered.  Routing to the bit bucket is automatically
  723.    performed by mail-transfer agents, news systems, and the lower
  724.    layers of the network.  3. The ideal location for all unwanted mail
  725.    responses: "Flames about this article to the bit bucket."
  726.    Such a request is guaranteed to overflow one's mailbox with flames.
  727.    4. Excuse for all mail that has not been sent.  "I mailed you
  728.    those figures last week; they must have ended in the bit bucket."
  729.    Compare {black hole}.
  730.  
  731.    This term is used purely in jest.  It is based on the fanciful
  732.    notion that bits are objects that are not destroyed but only
  733.    misplaced.  This appears to have been a mutation of an earlier term
  734.    `bit box', about which the same legend was current; old-time
  735.    hackers also report that trainees used to be told that when the CPU
  736.    stored bits into memory it was actually pulling them `out of the
  737.    bit box'.  See also {chad box}.
  738.  
  739.    Another variant of this legend has it that, as a consequence of the
  740.    `parity preservation law', the number of 1 bits that go to the bit
  741.    bucket must equal the number of 0 bits.  Any imbalance results in
  742.    bits filling up the bit bucket.  A qualified computer technician
  743.    can empty a full bit bucket as part of scheduled maintenance.
  744.  
  745. bit decay: n. See {bit rot}.  People with a physics background
  746.    tend to prefer this one for the analogy with particle decay.  See
  747.    also {computron}, {quantum bogodynamics}.
  748.  
  749. bit rot: n. Also {bit decay}.  Hypothetical disease the existence
  750.    of which has been deduced from the observation that unused programs
  751.    or features will often stop working after sufficient time has
  752.    passed, even if `nothing has changed'.  The theory explains that
  753.    bits decay as if they were radioactive.  As time passes, the
  754.    contents of a file or the code in a program will become
  755.    increasingly garbled.
  756.  
  757.    There actually are physical processes that produce such effects
  758.    (alpha particles generated by trace radionuclides in ceramic chip
  759.    packages, for example, can change the contents of a computer memory
  760.    unpredictably, and various kinds of subtle media failures can
  761.    corrupt files in mass storage), but they are quite rare (and
  762.    computers are built with error-detecting circuitry to compensate
  763.    for them).  The notion long favored among hackers that cosmic
  764.    rays are among the causes of such events turns out to be a myth;
  765.    see the {cosmic rays} entry for details.
  766.  
  767.    The term {software rot} is almost synonymous.  Software rot is
  768.    the effect, bit rot the notional cause.
  769.  
  770. bit twiddling: n. 1. (pejorative) An exercise in {tuning} in
  771.    which incredible amounts of time and effort go to produce little
  772.    noticeable improvement, often with the result that the code has
  773.    become incomprehensible.  2. Aimless small modification to a
  774.    program, esp. for some pointless goal.  3. Approx. syn. for {bit
  775.    bashing}; esp. used for the act of frobbing the device control
  776.    register of a peripheral in an attempt to get it back to a known
  777.    state.
  778.  
  779. bit-paired keyboard: n. obs. (alt. `bit-shift keyboard') A
  780.    non-standard keyboard layout that seems to have originated with
  781.    the Teletype ASR-33 and remained common for several years on early
  782.    computer equipment.  The ASR-33 was a mechanical device (see
  783.    {EOU}), so the only way to generate the character codes from
  784.    keystrokes was by some physical linkage.  The design of the ASR-33
  785.    assigned each character key a basic pattern that could be modified
  786.    by flipping bits if the SHIFT or the CTRL key was pressed.  In order
  787.    to avoid making the thing more of a Rube Goldberg kluge than it
  788.    already was, the design had to group characters that shared the
  789.    same basic bit pattern on one key.
  790.  
  791.    Looking at the ASCII chart, we find:
  792.  
  793.      high  low bits
  794.      bits  0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
  795.       010        !    "    #    $    %    &    '    (    )
  796.       011   0    1    2    3    4    5    6    7    8    9
  797.  
  798.    This is why the characters !"#$%&'() appear where they do on a
  799.    Teletype (thankfully, they didn't use shift-0 for space).  This was
  800.    *not* the weirdest variant of the {QWERTY} layout widely
  801.    seen, by the way; that prize should probably go to one of several
  802.    (differing) arrangements on IBM's even clunkier 026 and 029 card
  803.    punches.
  804.  
  805.    When electronic terminals became popular, in the early 1970s, there
  806.    was no agreement in the industry over how the keyboards should be
  807.    laid out.  Some vendors opted to emulate the Teletype keyboard,
  808.    while others used the flexibility of electronic circuitry to make
  809.    their product look like an office typewriter.  These alternatives
  810.    became known as `bit-paired' and `typewriter-paired' keyboards.  To
  811.    a hacker, the bit-paired keyboard seemed far more logical --- and
  812.    because most hackers in those days had never learned to touch-type,
  813.    there was little pressure from the pioneering users to adapt
  814.    keyboards to the typewriter standard.
  815.  
  816.    The doom of the bit-paired keyboard was the large-scale
  817.    introduction of the computer terminal into the normal office
  818.    environment, where out-and-out technophobes were expected to use
  819.    the equipment.  The `typewriter-paired' standard became universal,
  820.    `bit-paired' hardware was quickly junked or relegated to dusty
  821.    corners, and both terms passed into disuse.
  822.  
  823. bitblt: /bit'blit/ n. [from {BLT}, q.v.] 1. Any of a family
  824.    of closely related algorithms for moving and copying rectangles of
  825.    bits between main and display memory on a bit-mapped device, or
  826.    between two areas of either main or display memory (the requirement
  827.    to do the {Right Thing} in the case of overlapping source and
  828.    destination rectangles is what makes BitBlt tricky).  2. Synonym
  829.    for {blit} or {BLT}.  Both uses are borderline techspeak.
  830.  
  831. BITNET: /bit'net/ [acronym: Because It's Time NETwork] n.
  832.    Everybody's least favorite piece of the network (see {network,
  833.    the}).  The BITNET hosts are a collection of IBM dinosaurs and
  834.    VAXen (the latter with lobotomized comm hardware) that communicate
  835.    using 80-character {{EBCDIC}} card images (see {eighty-column
  836.    mind}); thus, they tend to mangle the headers and text of
  837.    third-party traffic from the rest of the ASCII/RFC-822 world with
  838.    annoying regularity.  BITNET is also notorious as the apparent home
  839.    of {BIFF}.
  840.  
  841. bits: n.pl. 1. Information.  Examples: "I need some bits about file
  842.    formats."  ("I need to know about file formats.")  Compare {core
  843.    dump}, sense 4.  2. Machine-readable representation of a document,
  844.    specifically as contrasted with paper:  "I have only a photocopy
  845.    of the Jargon File; does anyone know where I can get the bits?".
  846.    See {softcopy}, {source of all good bits} See also {bit}.
  847.  
  848. bitty box: /bit'ee boks/ n. 1. A computer sufficiently small,
  849.    primitive, or incapable as to cause a hacker acute claustrophobia
  850.    at the thought of developing software for it.  Especially used of
  851.    small, obsolescent, single-tasking-only personal machines such as
  852.    the Atari 800, Osborne, Sinclair, VIC-20, TRS-80, or IBM PC.
  853.    2. [Pejorative]  More generally, the opposite of `real computer'
  854.    (see {Get a real computer!}).  See also {mess-dos},
  855.    {toaster}, and {toy}.
  856.  
  857. bixie: /bik'see/ n. Variant {emoticon}s used on BIX (the Byte
  858.    Information eXchange).  The {smiley} bixie is <@_@>, apparently
  859.    intending to represent two cartoon eyes and a mouth.  A few others
  860.    have been reported.
  861.  
  862. black art: n. A collection of arcane, unpublished, and (by
  863.    implication) mostly ad-hoc techniques developed for a particular
  864.    application or systems area (compare {black magic}).  VLSI design
  865.    and compiler code optimization were (in their beginnings)
  866.    considered classic examples of black art; as theory developed they
  867.    became {deep magic}, and once standard textbooks had been written,
  868.    became merely {heavy wizardry}.  The huge proliferation of formal
  869.    and informal channels for spreading around new computer-related
  870.    technologies during the last twenty years has made both the term
  871.    `black art' and what it describes less common than formerly.  See
  872.    also {voodoo programming}.
  873.  
  874. black hole: n. When a piece of email or netnews disappears
  875.    mysteriously between its origin and destination sites (that is,
  876.    without returning a {bounce message}) it is commonly said to have
  877.    `fallen into a black hole'.  "I think there's a black hole at
  878.    foovax!" conveys suspicion that site foovax has been dropping
  879.    a lot of stuff on the floor lately (see {drop on the floor}).
  880.    The implied metaphor of email as interstellar travel is interesting
  881.    in itself.  Compare {bit bucket}.
  882.  
  883. black magic: n. A technique that works, though nobody really
  884.    understands why.  More obscure than {voodoo programming}, which
  885.    may be done by cookbook.  Compare also {black art}, {deep
  886.    magic}, and {magic number} (sense 2).
  887.  
  888. blast: 1. vt.,n. Synonym for {BLT}, used esp. for large data
  889.    sends over a network or comm line.  Opposite of {snarf}.  Usage:
  890.    uncommon.  The variant `blat' has been reported.  2. vt.
  891.    [HP/Apollo] Synonymous with {nuke} (sense 3).  Sometimes the
  892.    message `Unable to kill all processes.  Blast them (y/n)?' would
  893.    appear in the command window upon logout.
  894.  
  895. blat: n. 1. Syn. {blast}, sense 1.  2. See {thud}.
  896.  
  897. bletch: /blech/ [from Yiddish/German `brechen', to vomit, poss.
  898.    via comic-strip exclamation `blech'] interj.  Term of disgust.
  899.    Often used in "Ugh, bletch".  Compare {barf}.
  900.  
  901. bletcherous: /blech'*-r*s/ adj. Disgusting in design or function;
  902.    esthetically unappealing.  This word is seldom used of people.
  903.    "This keyboard is bletcherous!" (Perhaps the keys don't work very
  904.    well, or are misplaced.)  See {losing}, {cretinous},
  905.    {bagbiter}, {bogus}, and {random}.  The term {bletcherous}
  906.    applies to the esthetics of the thing so described; similarly for
  907.    {cretinous}.  By contrast, something that is `losing' or
  908.    `bagbiting' may be failing to meet objective criteria.  See also
  909.    {bogus} and {random}, which have richer and wider shades of
  910.    meaning than any of the above.
  911.  
  912. blinkenlights: /blink'*n-li:tz/ n. Front-panel diagnostic lights
  913.    on a computer, esp. a {dinosaur}.  Derives from the last word of
  914.    the famous
  915.    blackletter-Gothic
  916.    sign in mangled pseudo-German that once graced about half the
  917.    computer rooms in the English-speaking world.  One version ran in
  918.    its entirety as follows:
  919.  
  920.                    ACHTUNG!  ALLES LOOKENSPEEPERS!
  921.         Das computermachine ist nicht fuer gefingerpoken und mittengrabben.
  922.         Ist easy schnappen der springenwerk, blowenfusen und poppencorken
  923.         mit spitzensparken.  Ist nicht fuer gewerken bei das dumpkopfen.
  924.         Das rubbernecken sichtseeren keepen das cotten-pickenen hans in das
  925.         pockets muss; relaxen und watchen das blinkenlichten.
  926.  
  927.  
  928.    This silliness dates back at least as far as 1959 at Stanford
  929.    University and had already gone international by the early 1960s,
  930.    when it was reported at London University's ATLAS computing site.
  931.    There are several variants of it in circulation, some of which
  932.    actually do end with the word `blinkenlights'.
  933.  
  934.    In an amusing example of turnabout-is-fair-play, German hackers
  935.    have developed their own versions of the blinkenlights poster in
  936.    fractured English, one of which is reproduced here:
  937.  
  938.                                ATTENTION
  939.         This room is fullfilled mit special electronische equippment.
  940.         Fingergrabbing and pressing the cnoeppkes from the computers is
  941.         allowed for die experts only!  So all the "lefthanders" stay away
  942.         and do not disturben the brainstorming von here working
  943.         intelligencies.  Otherwise you will be out thrown and kicked
  944.         anderswhere!  Also: please keep still and only watchen astaunished
  945.         the blinkenlights.
  946.  
  947.    See also {geef}.
  948.  
  949. blit: /blit/ vt. 1. To copy a large array of bits from one part
  950.    of a computer's memory to another part, particularly when the
  951.    memory is being used to determine what is shown on a display
  952.    screen.  "The storage allocator picks through the table and copies
  953.    the good parts up into high memory, and then blits it all back
  954.    down again."  See {bitblt}, {BLT}, {dd}, {cat},
  955.    {blast}, {snarf}.  More generally, to perform some operation
  956.    (such as toggling) on a large array of bits while moving them.
  957.    2. All-capitalized as `BLIT': an early experimental bit-mapped
  958.    terminal designed by Rob Pike at Bell Labs, later commercialized as
  959.    the AT&T 5620.  (The folk etymology from `Bell Labs Intelligent
  960.    Terminal' is incorrect.)
  961.  
  962. blitter: /blit'r/ n. A special-purpose chip or hardware system
  963.    built to perform {blit} operations, esp. used for fast
  964.    implementation of bit-mapped graphics.  The Commodore Amiga and a
  965.    few other micros have these, but in 1991 the trend is away from
  966.    them (however, see {cycle of reincarnation}).  Syn. {raster
  967.    blaster}.
  968.  
  969. blivet: /bliv'*t/ [allegedly from a World War II military term
  970.    meaning "ten pounds of manure in a five-pound bag"] n. 1. An
  971.    intractable problem.  2. A crucial piece of hardware that can't be
  972.    fixed or replaced if it breaks.  3. A tool that has been hacked
  973.    over by so many incompetent programmers that it has become an
  974.    unmaintainable tissue of hacks.  4. An out-of-control but
  975.    unkillable development effort.  5. An embarrassing bug that pops up
  976.    during a customer demo.
  977.  
  978.    This term has other meanings in other technical cultures; among
  979.    experimental physicists and hardware engineers of various kinds it
  980.    seems to mean any random object of unknown purpose (similar to
  981.    hackish use of {frob}).  It has also been used to describe an
  982.    amusing trick-the-eye drawing resembling a three-pronged fork that
  983.    appears to depict a three-dimensional object until one realizes that
  984.    the parts fit together in an impossible way.
  985.  
  986. block: [from process scheduling terminology in OS theory] 1. vi.
  987.    To delay or sit idle while waiting for something.  "We're blocking
  988.    until everyone gets here."  Compare {busy-wait}.  2. `block
  989.    on' vt. To block, waiting for (something).  "Lunch is blocked on
  990.    Phil's arrival."
  991.  
  992. block transfer computations: n. From the television series
  993.    "Dr. Who", in which it referred to computations so fiendishly
  994.    subtle and complex that they could not be performed by machines.
  995.    Used to refer to any task that should be expressible as an
  996.    algorithm in theory, but isn't.
  997.  
  998. blow an EPROM: /bloh *n ee'prom/ v. (alt. `blast an EPROM',
  999.    `burn an EPROM') To program a read-only memory, e.g. for use
  1000.    with an embedded system.  This term arises because the programming
  1001.    process for the Programmable Read-Only Memories (PROMs) that
  1002.    preceded present-day Erasable Programmable Read-Only Memories
  1003.    (EPROMs) involved intentionally blowing tiny electrical fuses on
  1004.    the chip.  Thus, one was said to `blow' (or `blast') a PROM, and
  1005.    the terminology carried over even though the write process on
  1006.    EPROMs is nondestructive.
  1007.  
  1008. blow away: vt. To remove (files and directories) from permanent
  1009.    storage, generally by accident.  "He reformatted the wrong
  1010.    partition and blew away last night's netnews."  Oppose {nuke}.
  1011.  
  1012. blow out: vi. Of software, to fail spectacularly; almost as serious
  1013.    as {crash and burn}.  See {blow past}, {blow up}.
  1014.  
  1015. blow past: vt. To {blow out} despite a safeguard.  "The server blew
  1016.    past the 5K reserve buffer."
  1017.  
  1018. blow up: vi. 1. [scientific computation] To become unstable.  Suggests
  1019.    that the computation is diverging so rapidly that it will soon
  1020.    overflow or at least go {nonlinear}.  2.  Syn. {blow out}.
  1021.  
  1022. BLT: /B-L-T/, /bl*t/ or (rarely) /belt/ n.,vt. Synonym for
  1023.    {blit}.  This is the original form of {blit} and the ancestor
  1024.    of {bitblt}.  It referred to any large bit-field copy or move
  1025.    operation (one resource-intensive memory-shuffling operation done
  1026.    on pre-paged versions of ITS, WAITS, and TOPS-10 was sardonically
  1027.    referred to as `The Big BLT').  The jargon usage has outlasted the
  1028.    {PDP-10} BLock Transfer instruction from which {BLT} derives;
  1029.    nowadays, the assembler mnemonic {BLT} almost always means
  1030.    `Branch if Less Than zero'.
  1031.  
  1032. Blue Book: n. 1. Informal name for one of the three standard
  1033.    references on the page-layout and graphics-control language
  1034.    PostScript (`PostScript Language Tutorial and Cookbook', Adobe
  1035.    Systems, Addison-Wesley 1985, QA76.73.P67P68, ISBN 0-201-10179-3);
  1036.    the other two official guides are known as the {Green Book} and
  1037.    {Red Book}.  2. Informal name for one of the three standard
  1038.    references on Smalltalk: `Smalltalk-80: The Language and its
  1039.    Implementation', David Robson, Addison-Wesley 1983, QA76.8.S635G64,
  1040.    ISBN 0-201-11371-63 (this is also associated with green and red
  1041.    books).  3. Any of the 1988 standards issued by the CCITT's
  1042.    ninth plenary assembly.  Until now, they have changed color each review
  1043.    cycle (1984 was {Red Book}, 1992 would be {Green Book}); however,
  1044.    it is rumored that this convention is going to be dropped before 1992.
  1045.    These include, among other things, the X.400 email spec and
  1046.    the Group 1 through 4 fax standards.  See also {{book titles}}.
  1047.  
  1048. Blue Glue: [IBM] n. IBM's SNA (Systems Network Architecture), an
  1049.    incredibly {losing} and {bletcherous} communications protocol
  1050.    widely favored at commercial shops that don't know any better.  The
  1051.    official IBM definition is "that which binds blue boxes
  1052.    together."  See {fear and loathing}.  It may not be irrelevant
  1053.    that {Blue Glue} is the trade name of a 3M product that is
  1054.    commonly used to hold down the carpet squares to the removable
  1055.    panel floors common in {dinosaur pens}.  A correspondent at
  1056.    U. Minn. reports that the CS department there has about 80 bottles
  1057.    of the stuff hanging about, so they often refer to any messy work
  1058.    to be done as `using the blue glue'.
  1059.  
  1060. blue goo: n. Term for `police' {nanobot}s intended to prevent
  1061.    {gray goo}, denature hazardous waste, destroy pollution, put
  1062.    ozone back into the stratosphere, prevent halitosis, and promote
  1063.    truth, justice, and the American way, etc.  See
  1064.    {{nanotechnology}}.
  1065.  
  1066. BNF: /B-N-F/ n. 1. [techspeak] Acronym for `Backus-Naur Form', a
  1067.    metasyntactic notation used to specify the syntax of programming
  1068.    languages, command sets, and the like.  Widely used for language
  1069.    descriptions but seldom documented anywhere, so that it must
  1070.    usually be learned by osmosis from other hackers.  Consider this
  1071.    BNF for a U.S. postal address:
  1072.  
  1073.       <postal-address> ::= <name-part> <street-address> <zip-part>
  1074.  
  1075.       <personal-part> ::= <name> | <initial> "."
  1076.  
  1077.       <name-part> ::= <personal-part> <last-name> [<jr-part>] <EOL>
  1078.                     | <personal-part> <name-part>
  1079.  
  1080.       <street-address> ::= [<apt>] <house-num> <street-name> <EOL>
  1081.  
  1082.       <zip-part> ::= <town-name> "," <state-code> <ZIP-code> <EOL>
  1083.  
  1084.    This translates into English as: "A postal-address consists of a
  1085.    name-part, followed by a street-address part, followed by a
  1086.    zip-code part.  A personal-part consists of either a first name or
  1087.    an initial followed by a dot.  A name-part consists of either: a
  1088.    personal-part followed by a last name followed by an optional
  1089.    `jr-part' (Jr., Sr., or dynastic number) and end-of-line, or a
  1090.    personal part followed by a name part (this rule illustrates the
  1091.    use of recursion in BNFs, covering the case of people who use
  1092.    multiple first and middle names and/or initials).  A street address
  1093.    consists of an optional apartment specifier, followed by a street
  1094.    number, followed by a street name.  A zip-part consists of a
  1095.    town-name, followed by a comma, followed by a state code, followed
  1096.    by a ZIP-code followed by an end-of-line."  Note that many things
  1097.    (such as the format of a personal-part, apartment specifier, or
  1098.    ZIP-code) are left unspecified.  These are presumed to be obvious
  1099.    from context or detailed somewhere nearby.  See also {parse}.
  1100.    2. The term is also used loosely for any number of variants and
  1101.    extensions, possibly containing some or all of the {regexp}
  1102.    wildcards such as `*' or `+'.  In fact the example above
  1103.    isn't the pure form invented for the Algol-60 report; it uses
  1104.    `[]', which was introduced a few years later in IBM's PL/I
  1105.    definition but is now universally recognized.  3. In
  1106.    {{science-fiction fandom}}, BNF means `Big-Name Fan'
  1107.    (someone famous or notorious).  Years ago a fan started handing out
  1108.    black-on-green BNF buttons at SF conventions; this confused the
  1109.    hacker contingent terribly.
  1110.  
  1111. boa: [IBM] n. Any one of the fat cables that lurk under the floor
  1112.    in a {dinosaur pen}.  Possibly so called because they display a
  1113.    ferocious life of their own when you try to lay them straight and
  1114.    flat after they have been coiled for some time.  It is rumored
  1115.    within IBM that channel cables for the 370 are limited to 200 feet
  1116.    because beyond that length the boas get dangerous --- and it is
  1117.    worth noting that one of the major cable makers uses the trademark
  1118.    `Anaconda'.
  1119.  
  1120. board: n. 1. In-context synonym for {bboard}; sometimes used
  1121.    even for USENET newsgroups.  2. An electronic circuit board
  1122.    (compare {card}).
  1123.  
  1124. boat anchor: n. 1. Like {doorstop} but more severe; implies that
  1125.    the offending hardware is irreversibly dead or useless.  "That was
  1126.    a working motherboard once.  One lightning strike later, instant
  1127.    boat anchor!"  2. A person who just takes up space.
  1128.  
  1129. bogo-sort: /boh`goh-sort'/ n. (var. `stupid-sort') The
  1130.    archetypical perversely awful algorithm (as opposed to {bubble
  1131.    sort}, which is merely the generic *bad* algorithm).
  1132.    Bogo-sort is equivalent to repeatedly throwing a deck of cards in
  1133.    the air, picking them up at random, and then testing whether they
  1134.    are in order.  It serves as a sort of canonical example of
  1135.    awfulness.  Looking at a program and seeing a dumb algorithm, one
  1136.    might say "Oh, I see, this program uses bogo-sort."  Compare
  1137.    {bogus}, {brute force}.
  1138.  
  1139. bogometer: /boh-gom'-*t-er/ n. See {bogosity}.  Compare the
  1140.    `wankometer' described in the {wank} entry; see also
  1141.    {bogus}.
  1142.  
  1143. bogon: /boh'gon/ [by analogy with proton/electron/neutron, but
  1144.    doubtless reinforced after 1980 by the similarity to Douglas
  1145.    Adams's `Vogons'; see the Bibliography] n. 1. The elementary particle of
  1146.    bogosity (see {quantum bogodynamics}).  For instance, "the
  1147.    Ethernet is emitting bogons again" means that it is broken or
  1148.    acting in an erratic or bogus fashion.  2. A query packet sent from
  1149.    a TCP/IP domain resolver to a root server, having the reply bit set
  1150.    instead of the query bit.  3. Any bogus or incorrectly formed
  1151.    packet sent on a network.  4. By synecdoche, used to refer to any
  1152.    bogus thing, as in "I'd like to go to lunch with you but I've got
  1153.    to go to the weekly staff bogon".  5. A person who is bogus or who
  1154.    says bogus things.  This was historically the original usage, but
  1155.    has been overtaken by its derivative senses 1--4.  See
  1156.    also {bogosity}, {bogus}; compare {psyton}.
  1157.  
  1158. bogon filter: /boh'gon fil'tr/ n. Any device, software or hardware,
  1159.    that limits or suppresses the flow and/or emission of bogons.
  1160.    "Engineering hacked a bogon filter between the Cray and
  1161.    the VAXen, and now we're getting fewer dropped packets."  See
  1162.    also {bogosity}, {bogus}.
  1163.  
  1164. bogon flux: /boh'gon fluhks/ n. A measure of a supposed field of
  1165.    {bogosity} emitted by a speaker, measured by a {bogometer};
  1166.    as a speaker starts to wander into increasing bogosity a listener
  1167.    might say "Warning, warning, bogon flux is rising".  See
  1168.    {quantum bogodynamics}.
  1169.  
  1170. bogosity: /boh-go's*-tee/ n. 1. The degree to which something is
  1171.    {bogus}.  At CMU, bogosity is measured with a {bogometer}; in
  1172.    a seminar, when a speaker says something bogus, a listener might
  1173.    raise his hand and say "My bogometer just triggered".  More
  1174.    extremely, "You just pinned my bogometer"  means you just said
  1175.    or did something so outrageously bogus that it is off the scale,
  1176.    pinning the bogometer needle at the highest possible reading (one
  1177.    might also say "You just redlined my bogometer").  The
  1178.    agreed-upon unit of bogosity is the microLenat /mi:k`roh-len'*t/
  1179.    (uL).
  1180.    The consensus is that this is the largest unit practical
  1181.    for everyday use.  2. The potential field generated by a {bogon
  1182.    flux}; see {quantum bogodynamics}.  See also {bogon flux},
  1183.    {bogon filter}, {bogus}.
  1184.  
  1185.    Historical note: The microLenat was invented as a attack against
  1186.    noted computer scientist Doug Lenat by a {tenured graduate
  1187.    student}.  Doug had failed the student on an important exam for
  1188.    giving only "AI is bogus" as his answer to the questions.  The
  1189.    slur is generally considered unmerited, but it has become a running
  1190.    gag nevertheless.  Some of Doug's friends argue that *of
  1191.    course* a microLenat is bogus, since it is only one millionth of a
  1192.    Lenat.  Others have suggested that the unit should be redesignated
  1193.    after the grad student, as the microReid.
  1194.  
  1195. bogotify: /boh-go't*-fi:/ vt. To make or become bogus.  A
  1196.    program that has been changed so many times as to become completely
  1197.    disorganized has become bogotified.  If you tighten a nut too hard
  1198.    and strip the threads on the bolt, the bolt has become bogotified
  1199.    and you had better not use it any more.  This coinage led to the
  1200.    notional `autobogotiphobia' defined as `the fear of becoming
  1201.    bogotified'; but is not clear that the latter has ever been
  1202.    `live' jargon rather than a self-conscious joke in jargon about
  1203.    jargon.  See also {bogosity}, {bogus}.
  1204.  
  1205. bogue out: /bohg owt/ vi. To become bogus, suddenly and
  1206.    unexpectedly.  "His talk was relatively sane until somebody asked
  1207.    him a trick question; then he bogued out and did nothing but
  1208.    {flame} afterwards."  See also {bogosity}, {bogus}.
  1209.  
  1210. bogus: adj. 1. Non-functional.  "Your patches are bogus."
  1211.    2. Useless.  "OPCON is a bogus program."  3. False.  "Your
  1212.    arguments are bogus."  4. Incorrect.  "That algorithm is bogus."
  1213.    5. Unbelievable.  "You claim to have solved the halting problem
  1214.    for Turing Machines?  That's totally bogus."  6. Silly.  "Stop
  1215.    writing those bogus sagas."
  1216.  
  1217.    Astrology is bogus.  So is a bolt that is obviously about to break.
  1218.    So is someone who makes blatantly false claims to have solved a
  1219.    scientific problem.  (This word seems to have some, but not all, of
  1220.    the connotations of {random} --- mostly the negative ones.)
  1221.  
  1222.    It is claimed that `bogus' was originally used in the hackish sense
  1223.    at Princeton in the late 1960s.  It was spread to CMU and Yale by
  1224.    Michael Shamos, a migratory Princeton alumnus.  A glossary of bogus
  1225.    words was compiled at Yale when the word was first popularized (see
  1226.    {autobogotiphobia} under {bogotify}). The word spread into
  1227.    hackerdom from CMU and MIT.  By the early 1980s it was also
  1228.    current in something like the hackish sense in West Coast teen
  1229.    slang, and it had gone mainstream by 1985.  A correspondent from
  1230.    Cambridge reports, by contrast, that these uses of `bogus' grate on
  1231.    British nerves; in Britain the word means, rather specifically,
  1232.    `counterfeit', as in "a bogus 10-pound note".
  1233.  
  1234. Bohr bug: /bohr buhg/ [from quantum physics] n. A repeatable
  1235.    {bug}; one that manifests reliably under a possibly unknown but
  1236.    well-defined set of conditions.  Antonym of {heisenbug}; see also
  1237.    {mandelbug}.
  1238.  
  1239. boink: /boynk/ [USENET: ascribed there to the TV series
  1240.    "Cheers" and "Moonlighting"] 1. To have sex with;
  1241.    compare {bounce}, sense 3. (This is mainstream slang.) In
  1242.    Commonwealth hackish the variant `bonk' is more common.  2. After
  1243.    the original Peter Korn `Boinkon' {USENET} parties, used for
  1244.    almost any net social gathering, e.g., Miniboink, a small boink
  1245.    held by Nancy Gillett in 1988; Minniboink, a Boinkcon in Minnesota
  1246.    in 1989; Humpdayboinks, Wednesday get-togethers held in the San
  1247.    Francisco Bay Area.  Compare {@-party}.  3. Var of `bonk';
  1248.    see {bonk/oif}.
  1249.  
  1250. bomb: 1. v. General synonym for {crash} (sense 1) except that it
  1251.    is not used as a noun; esp. used of software or OS failures.
  1252.    "Don't run Empire with less than 32K stack, it'll bomb."
  1253.    2. n.,v. Atari ST and Macintosh equivalents of a UNIX `panic' or
  1254.    Amiga {guru} (sense 2), where icons of little black-powder bombs
  1255.    or mushroom clouds are displayed, indicating that the system has died.
  1256.    On the Mac, this may be accompanied by a decimal (or occasionally
  1257.    hexadecimal) number indicating what went wrong, similar to the
  1258.    Amiga GURU MEDITATION number (see {guru}).  {{MS-DOS}} machines
  1259.    tend to get {locked up} in this situation.
  1260.  
  1261. bondage-and-discipline language: A language (such as Pascal, Ada,
  1262.    APL, or Prolog) that, though ostensibly general-purpose, is designed
  1263.    so as to enforce an author's theory of `right programming' even
  1264.    though said theory is demonstrably inadequate for systems hacking
  1265.    or even vanilla general-purpose programming.  Often abbreviated
  1266.    `B&D'; thus, one may speak of things "having the B&D nature".
  1267.    See {{Pascal}}; oppose {languages of choice}.
  1268.  
  1269. bonk/oif: /bonk/, /oyf/ interj. In the {MUD} community, it has
  1270.    become traditional to express pique or censure by `bonking' the
  1271.    offending person.  There is a convention that one should
  1272.    acknowledge a bonk by saying `oif!' and a myth to the effect that
  1273.    failing to do so upsets the cosmic bonk/oif balance, causing much
  1274.    trouble in the universe.  Some MUDs have implemented special
  1275.    commands for bonking and oifing.  See also {talk mode},
  1276.    {posing}.
  1277.  
  1278. book titles:: There is a tradition in hackerdom of informally
  1279.    tagging important textbooks and standards documents with the
  1280.    dominant color of their covers or with some other conspicuous
  1281.    feature of the cover.  Many of these are described in this lexicon
  1282.    under their own entries. See {Aluminum Book}, {Blue Book},
  1283.    {Cinderella Book}, {Devil Book}, {Dragon Book}, {Green
  1284.    Book}, {Orange Book}, {Pink-Shirt Book}, {Purple Book},
  1285.    {Red Book}, {Silver Book}, {White Book}, {Wizard Book},
  1286.    {Yellow Book}, and {bible}.
  1287.  
  1288. boot: [techspeak; from `by one's bootstraps'] v.,n. To load and
  1289.    initialize the operating system on a machine.  This usage is no
  1290.    longer jargon (having passed into techspeak) but has given rise to
  1291.    some derivatives that are still jargon.
  1292.  
  1293.    The derivative `reboot' implies that the machine hasn't been
  1294.    down for long, or that the boot is a {bounce} intended to clear
  1295.    some state of {wedgitude}.  This is sometimes used of human
  1296.    thought processes, as in the following exchange: "You've lost
  1297.    me." "OK, reboot.  Here's the theory...."
  1298.  
  1299.    This term is also found in the variants `cold boot' (from
  1300.    power-off condition) and `warm boot' (with the CPU and all
  1301.    devices already powered up, as after a hardware reset or software
  1302.    crash).
  1303.  
  1304.    Another variant: `soft boot', reinitialization of only part of a
  1305.    system, under control of other software still running: "If
  1306.    you're running the {mess-dos} emulator, control-alt-insert will
  1307.    cause a soft-boot of the emulator, while leaving the rest of the
  1308.    system running."
  1309.  
  1310.    Opposed to this there is `hard boot', which connotes hostility
  1311.    towards or frustration with the machine being booted:  "I'll have
  1312.    to hard-boot this losing Sun." "I recommend booting it hard."
  1313.  
  1314.    Historical note: this term derives from `bootstrap loader', a short
  1315.    program that was read in from cards or paper tape, or toggled in
  1316.    from the front panel switches.  This program was always very short
  1317.    (great efforts were expended on making it short in order to
  1318.    minimize the labor and chance of error involved in toggling it in),
  1319.    but was just smart enough to read in a slightly more complex
  1320.    program (usually from a card or paper tape reader), to which it
  1321.    handed control; this program in turn was smart enough to read the
  1322.    application or operating system from a magnetic tape drive or disk
  1323.    drive.  Thus, in successive steps, the computer `pulled itself up
  1324.    by its bootstraps' to a useful operating state.  Nowadays the
  1325.    bootstrap is usually found in ROM or EPROM, and reads the first
  1326.    stage in from a fixed location on the disk, called the `boot
  1327.    block'.  When this program gains control, it is powerful enough to
  1328.    load the actual OS and hand control over to it.
  1329.  
  1330. bottom-up implementation: n. Hackish opposite of the techspeak term
  1331.    `top-down design'.  It is now received wisdom in most
  1332.    programming cultures that it is best to design from higher levels
  1333.    of abstraction down to lower, specifying sequences of action in
  1334.    increasing detail until you get to actual code.  Hackers often find
  1335.    (especially in exploratory designs that cannot be closely
  1336.    specified in advance) that it works best to *build* things in
  1337.    the opposite order, by writing and testing a clean set of primitive
  1338.    operations and then knitting them together.
  1339.  
  1340. bounce: v. 1. [perhaps from the image of a thrown ball bouncing
  1341.    off a wall] An electronic mail message that is undeliverable and
  1342.    returns an error notification to the sender is said to `bounce'.
  1343.    See also {bounce message}.  2. [Stanford] To play volleyball.
  1344.    At the now-demolished {D. C. Power Lab} building used by the
  1345.    Stanford AI Lab in the 1970s, there was a volleyball court on the
  1346.    front lawn.  From 5 P.M. to 7 P.M. was the scheduled
  1347.    maintenance time for the computer, so every afternoon at 5 the
  1348.    computer would become unavailable, and over the intercom a voice
  1349.    would cry, "Now hear this: bounce, bounce!" followed by Brian
  1350.    McCune loudly bouncing a volleyball on the floor outside the
  1351.    offices of known volleyballers.  3. To engage in sexual
  1352.    intercourse; prob. from the expression `bouncing the mattress',
  1353.    but influenced by Piglet's psychosexually loaded "Bounce on me
  1354.    too, Tigger!" from the "Winnie-the-Pooh" books.  Compare
  1355.    {boink}.  4. To casually reboot a system in order to clear up a
  1356.    transient problem.  Reported primarily among {VMS} users.
  1357.    5. [IBM] To {power cycle} a peripheral in order to reset it.
  1358.  
  1359. bounce message: [UNIX] n. Notification message returned to sender by
  1360.    a site unable to relay {email} to the intended {{Internet address}}
  1361.    recipient or the next link in a {bang path} (see {bounce}).
  1362.    Reasons might include a nonexistent or misspelled username or a
  1363.    {down} relay site.  Bounce messages can themselves fail, with
  1364.    occasionally ugly results; see {sorcerer's apprentice mode}.
  1365.    The term `bounce mail' is also common.
  1366.  
  1367. box: n. 1. A computer; esp. in the construction `foo box'
  1368.    where foo is some functional qualifier, like `graphics', or
  1369.    the name of an OS (thus, `UNIX box', `MS-DOS box', etc.)  "We
  1370.    preprocess the data on UNIX boxes before handing it up to the
  1371.    mainframe."  2. [within IBM] Without qualification but within an
  1372.    SNA-using site, this refers specifically to an IBM front-end
  1373.    processor or FEP /F-E-P/.  An FEP is a small computer necessary
  1374.    to enable an IBM {mainframe} to communicate beyond the limits of
  1375.    the {dinosaur pen}.  Typically used in expressions like the cry
  1376.    that goes up when an SNA network goes down: "Looks like the
  1377.    {box} has fallen over." (See {fall over}.) See also
  1378.    {IBM}, {fear and loathing}, {fepped out}, {Blue
  1379.    Glue}.
  1380.  
  1381. boxed comments: n. Comments (explanatory notes attached to program
  1382.    instructions) that occupy several lines by themselves; so called
  1383.    because in assembler and C code they are often surrounded by a box
  1384.    in a style something like this:
  1385.  
  1386.      /*************************************************
  1387.       *
  1388.       * This is a boxed comment in C style
  1389.       *
  1390.       *************************************************/
  1391.  
  1392.    Common variants of this style omit the asterisks in column 2 or add
  1393.    a matching row of asterisks closing the right side of the box.  The
  1394.    sparest variant omits all but the comment delimiters themselves;
  1395.    the `box' is implied.  Oppose {winged comments}.
  1396.  
  1397. boxen: /bok'sn/ [by analogy with {VAXen}] pl.n. Fanciful
  1398.    plural of {box} often encountered in the phrase `UNIX boxen',
  1399.    used to describe commodity {{UNIX}} hardware.  The connotation is
  1400.    that any two UNIX boxen are interchangeable.
  1401.  
  1402. boxology: /bok-sol'*-jee/ n. Syn. {ASCII art}.  This term
  1403.    implies a more restricted domain, that of box-and-arrow drawings.
  1404.    "His report has a lot of boxology in it."  Compare
  1405.    {macrology}.
  1406.  
  1407. bozotic: /boh-zoh'tik/ or /boh-zo'tik/ [from the name of a TV
  1408.    clown even more losing than Ronald McDonald] adj. Resembling or
  1409.    having the quality of a bozo; that is, clownish, ludicrously wrong,
  1410.    unintentionally humorous.  Compare {wonky}, {demented}.  Note
  1411.    that the noun `bozo' occurs in slang, but the mainstream
  1412.    adjectival form would be `bozo-like' or (in New England)
  1413.    `bozoish'.
  1414.  
  1415. BQS: /B-Q-S/ adj. Syn. {Berkeley Quality Software}.
  1416.  
  1417. brain dump: n. The act of telling someone everything one knows
  1418.    about a particular topic or project.  Typically used when someone
  1419.    is going to let a new party maintain a piece of code.  Conceptually
  1420.    analogous to an operating system {core dump} in that it saves a
  1421.    lot of useful {state} before an exit.  "You'll have to
  1422.    give me a brain dump on FOOBAR before you start your new job at
  1423.    HackerCorp."  See {core dump} (sense 4).  At Sun, this is also
  1424.    known as `TOI' (transfer of information).
  1425.  
  1426. brain-damaged: 1. [generalization of `Honeywell Brain Damage'
  1427.    (HBD), a theoretical disease invented to explain certain utter
  1428.    cretinisms in Honeywell {{Multics}}] adj. Obviously wrong;
  1429.    {cretinous}; {demented}.  There is an implication that the
  1430.    person responsible must have suffered brain damage, because he
  1431.    should have known better.  Calling something brain-damaged is
  1432.    really bad; it also implies it is unusable, and that its failure to
  1433.    work is due to poor design rather than some accident.  "Only six
  1434.    monocase characters per file name?  Now *that's*
  1435.    brain-damaged!"  2. [esp. in the Mac world] May refer to free
  1436.    demonstration software that has been deliberately crippled in some
  1437.    way so as not to compete with the commercial product it is
  1438.    intended to sell.  Syn.  {crippleware}.
  1439.  
  1440. brain-dead: adj. Brain-damaged in the extreme.  It tends to imply
  1441.    terminal design failure rather than malfunction or simple
  1442.    stupidity.  "This comm program doesn't know how to send a break
  1443.    --- how brain-dead!"
  1444.  
  1445. braino: /bray'no/ n. Syn. for {thinko}.
  1446.  
  1447. branch to Fishkill: [IBM: from the location of one of the
  1448.    corporation's facilities] n. Any unexpected jump in a program that
  1449.    produces catastrophic or just plain weird results.  See {jump
  1450.    off into never-never land}, {hyperspace}.
  1451.  
  1452. brand brand brand: n. Humorous catch-phrase from {BartleMUD}s, in
  1453.    which players were described carrying a list of objects, the most
  1454.    common of which would usually be a brand.  Often used as a joke in
  1455.    {talk mode} as in "Fred the wizard is here, carrying brand ruby
  1456.    brand brand brand kettle broadsword flamethrower".  A brand is a
  1457.    torch, of course; one burns up a lot of those exploring dungeons.
  1458.    Prob. influenced by the famous Monty Python "Spam" skit.
  1459.  
  1460. break: 1. vt. To cause to be broken (in any sense).  "Your latest
  1461.    patch to the editor broke the paragraph commands."  2. v.  (of a
  1462.    program) To stop temporarily, so that it may debugged.  The place
  1463.    where it stops is a `breakpoint'.  3. [techspeak] vi. To send an
  1464.    RS-232 break (125 msec of line high) over a serial comm line.
  1465.    4. [UNIX] vi. To strike whatever key currently causes the tty
  1466.    driver to send SIGINT to the current process.  Normally, break
  1467.    (sense 3) or delete does this.  5. `break break' may be said to
  1468.    interrupt a conversation (this is an example of verb doubling).
  1469.  
  1470. breath-of-life packet: [XEROX PARC] n. An Ethernet packet that
  1471.    contained bootstrap (see {boot}) code, periodically sent out
  1472.    from a working computer to infuse the `breath of life' into any
  1473.    computer on the network that had happened to crash.  The machines
  1474.    had hardware or firmware that would wait for such a packet after a
  1475.    catastrophic error.
  1476.  
  1477. breedle: n. See {feep}.
  1478.  
  1479. bring X to its knees: v. To present a machine, operating system,
  1480.    piece of software, or algorithm with a load so extreme or
  1481.    {pathological} that it grinds to a halt.  "To bring a MicroVAX
  1482.    to its knees, try twenty users running {vi} --- or four running
  1483.    {EMACS}."  Compare {hog}.
  1484.  
  1485. brittle: adj. Said of software that is functional but easily broken
  1486.    by changes in operating environment or configuration, or by any
  1487.    minor tweak to the software itself.  Also, any system that
  1488.    responds inappropriately and disastrously to expected external
  1489.    stimuli; e.g., a file system that is usually totally scrambled by a
  1490.    power failure is said to be brittle.  This term is often used to
  1491.    describe the results of a research effort that were never intended
  1492.    to be robust, but it can be applied to commercially developed
  1493.    software, which displays the quality far more often than it ought
  1494.    to.  Oppose {robust}.
  1495.  
  1496. broadcast storm: n. An incorrect packet broadcast on a network that
  1497.    causes most hosts to respond all at once, typically with wrong
  1498.    answers that start the process over again.  See {network
  1499.    meltdown}.
  1500.  
  1501. broken: adj. 1. Not working properly (of programs).  2. Behaving
  1502.    strangely; especially (when used of people) exhibiting extreme
  1503.    depression.
  1504.  
  1505. broken arrow: [IBM] n. The error code displayed on line 25 of a
  1506.    3270 terminal (or a PC emulating a 3270) for various kinds of
  1507.    protocol violations and "unexpected" error conditions (including
  1508.    connection to a {down} computer).  On a PC, simulated with
  1509.    `->/_', with the two center characters overstruck. In true
  1510.    {luser} fashion, the original documentation of these codes
  1511.    (visible on every 3270 terminal, and necessary for debugging
  1512.    network problems) was confined to an IBM customer engineering
  1513.    manual.
  1514.  
  1515.    Note: to appreciate this term fully, it helps to know that `broken
  1516.    arrow' is also military jargon for an accident involving nuclear
  1517.    weapons.... 
  1518.  
  1519. broket: /broh'k*t/ or /broh'ket`/ [by analogy with `bracket': a
  1520.    `broken bracket'] n. Either of the characters `<' and `>',
  1521.    when used as paired enclosing delimiters.  This word
  1522.    originated as a contraction of the phrase `broken bracket', that
  1523.    is, a bracket that is bent in the middle.  (At MIT, and apparently
  1524.    in the {Real World} as well, these are usually called {angle
  1525.    brackets}.)
  1526.  
  1527. Brooks's Law: prov. "Adding manpower to a late software project
  1528.    makes it later" --- a result of the fact that the advantage from
  1529.    splitting work among N programmers is O(N) (that is,
  1530.    proportional to N), but the complexity and communications
  1531.    cost associated with coordinating and then merging their work
  1532.    is O(N^2) (that is, proportional to the square of N).
  1533.    The quote is from Fred Brooks, a manager of IBM's OS/360 project
  1534.    and author of `The Mythical Man-Month' (Addison-Wesley, 1975,
  1535.    ISBN 0-201-00650-2), an excellent early book on software
  1536.    engineering.  The myth in question has been most tersely expressed
  1537.    as "Programmer time is fungible" and Brooks established
  1538.    conclusively that it is not.  Hackers have never forgotten his
  1539.    advice; too often, {management} does.  See also
  1540.    {creationism}, {second-system effect}.
  1541.  
  1542. BRS: /B-R-S/ n. Syn. {Big Red Switch}.  This abbreviation is
  1543.    fairly common on-line.
  1544.  
  1545. brute force: adj. Describes a primitive programming style, one in
  1546.    which the programmer relies on the computer's processing power
  1547.    instead of using his or her own intelligence to simplify the problem,
  1548.    often ignoring problems of scale and applying na"ive methods suited
  1549.    to small problems directly to large ones.
  1550.  
  1551.    The {canonical} example of a brute-force algorithm is associated
  1552.    with the `traveling salesman problem' (TSP), a classical NP-hard
  1553.    problem: Suppose a person is in, say, Boston, and wishes to drive
  1554.    to N other cities.  In what order should he or she visit
  1555.    them in order to minimize the distance travelled?  The brute-force
  1556.    method is to simply generate all possible routes and compare the
  1557.    distances; while guaranteed to work and simple to implement, this
  1558.    algorithm is clearly very stupid in that it considers even
  1559.    obviously absurd routes (like going from Boston to Houston via San
  1560.    Francisco and New York, in that order).  For very small N it
  1561.    works well, but it rapidly becomes absurdly inefficient when
  1562.    N increases (for N = 15, there are already
  1563.    1,307,674,368,000 possible routes to consider, and for
  1564.    N = 1000 --- well, see {bignum}).  See
  1565.    also {NP-}.
  1566.  
  1567.    A more simple-minded example of brute-force programming is finding
  1568.    the smallest number in a large list by first using an existing
  1569.    program to sort the list in ascending order, and then picking the
  1570.    first number off the front.
  1571.  
  1572.    Whether brute-force programming should be considered stupid or not
  1573.    depends on the context; if the problem isn't too big, the extra CPU
  1574.    time spent on a brute-force solution may cost less than the
  1575.    programmer time it would take to develop a more `intelligent'
  1576.    algorithm.  Alternatively, a more intelligent algorithm may imply
  1577.    more long-term complexity cost and bug-chasing than are justified
  1578.    by the speed improvement.
  1579.  
  1580.    Ken Thompson, co-inventor of UNIX, is reported to have uttered the
  1581.    epigram "When in doubt, use brute force".  He probably intended
  1582.    this as a {ha ha only serious}, but the original UNIX kernel's
  1583.    preference for simple, robust, and portable algorithms over
  1584.    {brittle} `smart' ones does seem to have been a significant
  1585.    factor in the success of that OS.  Like so many other tradeoffs in
  1586.    software design, the choice between brute force and complex,
  1587.    finely-tuned cleverness is often a difficult one that requires both
  1588.    engineering savvy and delicate esthetic judgment.
  1589.  
  1590. brute force and ignorance: n. A popular design technique at many
  1591.    software houses --- {brute force} coding unrelieved by any
  1592.    knowledge of how problems have been previously solved in elegant
  1593.    ways.  Dogmatic adherence to design methodologies tends to
  1594.    encourage it.  Characteristic of early {larval stage}
  1595.    programming; unfortunately, many never outgrow it.  Often
  1596.    abbreviated BFI: "Gak, they used a bubble sort!  That's strictly
  1597.    from BFI."  Compare {bogosity}.
  1598.  
  1599. BSD: /B-S-D/ n. [acronym for `Berkeley System Distribution'] a
  1600.    family of {{UNIX}} versions for the DEC {VAX} and PDP-11
  1601.    developed by Bill Joy and others at {Berzerkeley} starting around
  1602.    1980, incorporating paged virtual memory, TCP/IP networking
  1603.    enhancements, and many other features.  The BSD versions (4.1, 4.2,
  1604.    and 4.3) and the commercial versions derived from them (SunOS, ULTRIX,
  1605.    and Mt. Xinu) held the technical lead in the UNIX world until
  1606.    AT&T's successful standardization efforts after about 1986, and are
  1607.    still widely popular.  See {{UNIX}}, {USG UNIX}.
  1608.  
  1609. bubble sort: n. Techspeak for a particular sorting technique in
  1610.    which pairs of adjacent values in the list to be sorted are
  1611.    compared and interchanged if they are out of order; thus, list
  1612.    entries `bubble upward' in the list until they bump into one with a
  1613.    lower sort value.  Because it is not very good relative to other
  1614.    methods and is the one typically stumbled on by {na"ive} and
  1615.    untutored programmers, hackers consider it the {canonical}
  1616.    example of a na"ive algorithm.  The canonical example of a really
  1617.    *bad* algorithm is {bogo-sort}.  A bubble sort might be used
  1618.    out of ignorance, but any use of bogo-sort could issue only from
  1619.    brain damage or willful perversity.
  1620.  
  1621. bucky bits: /buh'kee bits/ n. 1. obs. The bits produced by the
  1622.    CONTROL and META shift keys on a SAIL keyboard, resulting in a
  1623.    9-bit keyboard character set.  The MIT AI TV (Knight) keyboards
  1624.    extended this with TOP and separate left and right CONTROL and META
  1625.    keys, resulting in a 12-bit character set; later, LISP Machines
  1626.    added such keys as SUPER, HYPER, and GREEK (see {space-cadet
  1627.    keyboard}).  2. By extension, bits associated with `extra' shift
  1628.    keys on any keyboard, e.g., the ALT on an IBM PC or command and
  1629.    option keys on a Macintosh.
  1630.  
  1631.    It is rumored that `bucky bits' were named for Buckminster Fuller
  1632.    during a period when he was consulting at Stanford.  Actually,
  1633.    `Bucky' was Niklaus Wirth's nickname when *he* was at
  1634.    Stanford; he first suggested the idea of an EDIT key to set the
  1635.    8th bit of an otherwise 7-bit ASCII character.  This was used in a
  1636.    number of editors written at Stanford or in its environs (TV-EDIT
  1637.    and NLS being the best-known).  The term spread to MIT and CMU
  1638.    early and is now in general use.  See {double bucky},
  1639.    {quadruple bucky}.
  1640.  
  1641. buffer overflow: n. What happens when you try to stuff more data
  1642.    into a buffer (holding area) than it can handle.  This may be due
  1643.    to a mismatch in the processing rates of the producing and
  1644.    consuming processes (see {overrun}), or because the buffer is
  1645.    simply too small to hold all the data that must accumulate before a
  1646.    piece of it can be processed. For example, in a text-processing
  1647.    tool that {crunch}es a line at a time, a short line buffer can
  1648.    result in {lossage} as input from a long line overflows the
  1649.    buffer and trashes data beyond it.  Good defensive programming
  1650.    would check for overflow on each character and stop accepting data
  1651.    when the buffer is full up.  The term is used of and by humans in a
  1652.    metaphorical sense. "What time did I agree to meet you?  My buffer
  1653.    must have overflowed."  Or "If I answer that phone my buffer is
  1654.    going to overflow."  See also {spam}, {overrun screw}.
  1655.  
  1656. bug: n. An unwanted and unintended property of a program or hardware,
  1657.    esp. one that causes it to malfunction.  Antonym of {feature}.
  1658.    Examples: "There's a bug in the editor: it writes things out
  1659.    backwards."  "The system crashed because of a hardware bug."
  1660.    "Fred is a winner, but he has a few bugs"  (i.e., Fred is a good
  1661.    guy, but he has a few personality problems).
  1662.  
  1663.    Historical note: Some have said this term came from telephone
  1664.    company usage, in which "bugs in a telephone cable" were blamed
  1665.    for noisy lines, but this appears to be an incorrect folk
  1666.    etymology.  Admiral Grace Hopper (an early computing pioneer better
  1667.    known for inventing {COBOL}) liked to tell a story in which a
  1668.    technician solved a persistent {glitch} in the Harvard Mark II
  1669.    machine by pulling an actual insect out from between the
  1670.    contacts of one of its relays, and she subsequently promulgated
  1671.    {bug} in its hackish sense as a joke about the incident (though,
  1672.    as she was careful to admit, she was not there when it happened).
  1673.    For many years the logbook associated with the incident and the
  1674.    actual bug in question (a moth) sat in a display case at the Naval
  1675.    Surface Warfare Center.  The entire story, with a picture of the
  1676.    logbook and the moth taped into it, is recorded in the `Annals of
  1677.    the History of Computing', Vol. 3, No. 3 (July 1981), pp. 285--286.
  1678.  
  1679.    The text of the log entry (from September 9, 1945), reads "1545
  1680.    Relay #70 Panel F (moth) in relay.  First actual case of bug being
  1681.    found".  This wording seems to establish that the term was already in use
  1682.    at the time in its current specific sense.  Indeed, the use of
  1683.    `bug' to mean an industrial defect was already established in
  1684.    Thomas Edison's time, and `bug' in the sense of an disruptive event
  1685.    goes back to Shakespeare!  In the first edition of Samuel Johnson's
  1686.    dictionary one meaning of `bug' is "A frightful object; a walking
  1687.    spectre"; this is traced to `bugbear', a Welsh term for a variety
  1688.    of mythological monster which (to complete the circle) has recently
  1689.    been reintroduced into the popular lexicon through fantasy
  1690.    role-playing games.
  1691.  
  1692.    In any case, in jargon the word almost never refers to insects.
  1693.    Here is a plausible conversation that never actually happened:
  1694.  
  1695.    "There is a bug in this ant farm!"
  1696.  
  1697.    "What do you mean?  I don't see any ants in it."
  1698.  
  1699.    "That's the bug."
  1700.  
  1701.    [There has been a widespread myth that the original bug was moved
  1702.    to the Smithsonian, and an earlier version of this entry so
  1703.    asserted.  A correspondent who thought to check discovered that the
  1704.    bug was not there.  While investigating this, your editor
  1705.    discovered that the NSWC still had the bug, but had unsuccessfully
  1706.    tried to get the Smithsonian to accept it --- and that the present
  1707.    curator of the History of American Technology Museum didn't
  1708.    know this and agreed that it would make a worthwhile exhibit.
  1709.    Thus, the process of investigating the original-computer-bug bug
  1710.    may have fixed it in an entirely unexpected way, by making the myth
  1711.    true!  --- ESR]
  1712.  
  1713. bug-compatible: adj. Said of a design or revision that has been
  1714.    badly compromised by a requirement to be compatible with
  1715.    {fossil}s or {misfeature}s in other programs or (esp.)
  1716.    previous releases of itself. "MS-DOS 2.0 used \ as a path
  1717.    separator to be bug-compatible with some cretin's choice of / as an
  1718.    option character in 1.0."
  1719.  
  1720. bug-for-bug compatible: n. Same as {bug-compatible}, with the
  1721.    additional implication that much tedious effort went into ensuring
  1722.    that each (known) bug was replicated.
  1723.  
  1724. buglix: /buhg'liks/ n. Pejorative term referring to DEC's ULTRIX
  1725.    operating system in its earlier *severely* buggy versions.
  1726.    Still used to describe ULTRIX, but without venom.  Compare
  1727.    {HP-SUX}.
  1728.  
  1729. bulletproof: adj. Used of an algorithm or implementation considered
  1730.    extremely {robust}; lossage-resistant; capable of correctly
  1731.    recovering from any imaginable exception condition.  This is a rare
  1732.    and valued quality.  Syn. {armor-plated}.
  1733.  
  1734. bum: 1. vt. To make highly efficient, either in time or space,
  1735.    often at the expense of clarity.  "I managed to bum three more
  1736.    instructions out of that code."  "I spent half the night bumming
  1737.    the interrupt code."  2. To squeeze out excess; to remove
  1738.    something in order to improve whatever it was removed from (without
  1739.    changing function; this distinguishes the process from a
  1740.    {featurectomy}).  3. n. A small change to an algorithm, program,
  1741.    or hardware device to make it more efficient.  "This hardware bum
  1742.    makes the jump instruction faster."  Usage: now uncommon, largely
  1743.    superseded by v. {tune} (and n. {tweak}, {hack}), though
  1744.    none of these exactly capture sense 2.  All these uses are rare in
  1745.    Commonwealth hackish, because in the parent dialects of English
  1746.    `bum' is a rude synonym for `buttocks'.
  1747.  
  1748. bump: vt. Synonym for increment.  Has the same meaning as
  1749.    C's ++ operator.  Used esp. of counter variables, pointers, and index
  1750.    dummies in `for', `while', and `do-while' loops.
  1751.  
  1752. burble: [from Lewis Carroll's "Jabberwocky"] v. Like {flame},
  1753.    but connotes that the source is truly clueless and ineffectual
  1754.    (mere flamers can be competent).  A term of deep contempt.
  1755.    "There's some guy on the phone burbling about how he got a DISK
  1756.    FULL error and it's all our comm software's fault."
  1757.  
  1758. buried treasure: n. A surprising piece of code found in some
  1759.    program.  While usually not wrong, it tends to vary from {crufty}
  1760.    to {bletcherous}, and has lain undiscovered only because it was
  1761.    functionally correct, however horrible it is.  Used sarcastically,
  1762.    because what is found is anything *but* treasure.  Buried
  1763.    treasure almost always needs to be dug up and removed.  "I just
  1764.    found that the scheduler sorts its queue using {bubble sort}!
  1765.    Buried treasure!"
  1766.  
  1767. burn-in period: n. 1. A factory test designed to catch systems
  1768.    with {marginal} components before they get out the door; the
  1769.    theory is that burn-in will protect customers by outwaiting the
  1770.    steepest part of the {bathtub curve} (see {infant
  1771.    mortality}).  2. A period of indeterminate length in which a person
  1772.    using a computer is so intensely involved in his project that he
  1773.    forgets basic needs such as food, drink, sleep, etc.  Warning:
  1774.    Excessive burn-in can lead to burn-out.  See {hack mode},
  1775.    {larval stage}.
  1776.  
  1777. burst page: n. Syn. {banner}, sense 1.
  1778.  
  1779. busy-wait: vi. Used of human behavior, conveys that the subject is
  1780.    busy waiting for someone or something, intends to move instantly as
  1781.    soon as it shows up, and thus cannot do anything else at the
  1782.    moment.  "Can't talk now, I'm busy-waiting till Bill gets off the
  1783.    phone."
  1784.  
  1785.    Technically, `busy-wait' means to wait on an event by
  1786.    {spin}ning through a tight or timed-delay loop that polls for
  1787.    the event on each pass, as opposed to setting up an interrupt
  1788.    handler and continuing execution on another part of the task.  This
  1789.    is a wasteful technique, best avoided on time-sharing systems where
  1790.    a busy-waiting program may {hog} the processor.
  1791.  
  1792. buzz: vi. 1. Of a program, to run with no indication of progress
  1793.    and perhaps without guarantee of ever finishing; esp. said of
  1794.    programs thought to be executing tight loops of code.  A program
  1795.    that is buzzing appears to be {catatonic}, but you never get out
  1796.    of catatonia, while a buzzing loop may eventually end of its own
  1797.    accord.  "The program buzzes for about 10 seconds trying to sort
  1798.    all the names into order."  See {spin}; see also {grovel}.
  1799.    2. [ETA Systems] To test a wire or printed circuit trace for
  1800.    continuity by applying an AC rather than DC signal.  Some wire
  1801.    faults will pass DC tests but fail a buzz test.  3. To process an
  1802.    array or list in sequence, doing the same thing to each element.
  1803.    "This loop buzzes through the tz array looking for a terminator
  1804.    type."
  1805.  
  1806. BWQ: /B-W-Q/ [IBM: acronym, `Buzz Word Quotient'] The
  1807.    percentage of buzzwords in a speech or documents.  Usually roughly
  1808.    proportional to {bogosity}.  See {TLA}.
  1809.  
  1810. by hand: adv. Said of an operation (especially a repetitive,
  1811.    trivial, and/or tedious one) that ought to be performed
  1812.    automatically by the computer, but which a hacker instead has to
  1813.    step tediously through.  "My mailer doesn't have a command to
  1814.    include the text of the message I'm replying to, so I have to do it
  1815.    by hand."  This does not necessarily mean the speaker has to
  1816.    retype a copy of the message; it might refer to, say, dropping into
  1817.    a {subshell} from the mailer, making a copy of one's mailbox file,
  1818.    reading that into an editor, locating the top and bottom of the
  1819.    message in question, deleting the rest of the file, inserting `>'
  1820.    characters on each line, writing the file, leaving the editor,
  1821.    returning to the mailer, reading the file in, and later remembering
  1822.    to delete the file.  Compare {eyeball search}.
  1823.  
  1824. byte:: /bi:t/ [techspeak] n. A unit of memory or data equal to
  1825.    the amount used to represent one character; on modern architectures
  1826.    this is usually 8 bits, but may be 9 on 36-bit machines.  Some
  1827.    older architectures used `byte' for quantities of 6 or 7 bits, and
  1828.    the PDP-10 supported `bytes' that were actually bitfields of
  1829.    1 to 36 bits!  These usages are now obsolete, and even 9-bit bytes
  1830.    have become rare in the general trend toward power-of-2 word sizes.
  1831.  
  1832.    Historical note: The term originated in 1956 during the early
  1833.    design phase for the IBM Stretch computer; originally it was
  1834.    described as 1 to 6 bits (typical I/O equipment of the period
  1835.    used 6-bit chunks of information).  The move to an 8-bit byte
  1836.    happened in late 1956, and this size was later adopted and
  1837.    promulgated as a standard by the System/360.  The term `byte' was
  1838.    coined by mutating the word `bite' so it would not be accidentally
  1839.    misspelled as {bit}.  See also {nybble}.
  1840.  
  1841. bytesexual: /bi:t`sek'shu-*l/ adj. Said of hardware, denotes
  1842.    willingness to compute or pass data in either {big-endian} or
  1843.    {little-endian} format (depending, presumably, on a {mode bit}
  1844.    somewhere).  See also {NUXI problem}.
  1845.  
  1846.